problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
leetcode::single_element_in_a_sorted_array::Solution类 参考

#include <leetcode.h>

静态 Public 成员函数

static int singleNonDuplicate (vector< int > &nums)
 

详细描述

在文件 leetcode.h1134 行定义.

成员函数说明

◆ singleNonDuplicate()

int leetcode::single_element_in_a_sorted_array::Solution::singleNonDuplicate ( vector< int > &  nums)
static

在文件 leetcode.cpp2895 行定义.

2895 {
2896 int l = 0;
2897 int r = nums.size() - 1;
2898 while(l < r) {
2899 if(l + 1 == r) {
2900 if(l == 0) {
2901 return nums[l];
2902 }
2903 if(r == nums.size() - 1) {
2904 return nums[r];
2905 }
2906 if(nums[l - 1] == nums[l]) {
2907 return nums[r];
2908 }
2909 return nums[l];
2910 }
2911 const int m = (l + r) / 2;
2912 int tmp = m;
2913 if(nums[m + 1] == nums[m]) {
2914 tmp = m + 1;
2915 }
2916 if(tmp % 2 == 0) {
2917 //在左边
2918 r = m;
2919 } else {
2920 //在右边
2921 l = m;
2922 }
2923 }
2924 return nums[l];
2925 }

被这些函数引用 leetcode::single_element_in_a_sorted_array::TEST().


该类的文档由以下文件生成: