leetcode_有序数组中的单一元素

540. 有序数组中的单一元素 - 力扣(LeetCode)

二分查找

使用条件 : 有序 , log n

复制代码
class Solution {
public:
    int singleNonDuplicate(vector<int>& nums) {
        int left = 0, right = nums.size() - 1, mid;
        while (left < right){
            mid = ( left + right ) / 2;
            if (mid % 2 == 1){
                mid -= 1;
            }
            if ( nums[mid] == nums[mid + 1] ){  //速说明这个数在右边
                left = mid + 2;
            }else {
                right = mid;
            }
        }
        return nums[left];
    }
};
相关推荐
我找到地球的支点啦13 小时前
Matlab系列(006) 一利用matlab保存txt文件和读取txt文件
开发语言·算法·matlab
历程里程碑14 小时前
双指针巧解LeetCode接雨水难题
java·开发语言·数据结构·c++·python·flask·排序算法
Dev7z14 小时前
基于Matlab实现GRACE卫星重力数据的全球水储量变化估算与分析
人工智能·算法·matlab
爱喝热水的呀哈喽14 小时前
11题目汇总
算法
三斗米15 小时前
Transformer入门:一文读懂《Attention Is All You Need》
算法·架构
橘颂TA15 小时前
【剑斩OFFER】算法的暴力美学——链表相加(二)
数据结构·链表·牛客·结构与算法
报错小能手15 小时前
数据结构 可扩展哈希
数据结构·哈希算法·散列表
Swift社区15 小时前
LeetCode 458 - 可怜的小猪
算法·leetcode·职场和发展
AI科技星15 小时前
宇宙的像素:真空中一点如何编码无限星光
数据结构·人工智能·算法·机器学习·重构
程芯带你刷C语言简单算法题15 小时前
Day37~求组合数
c语言·开发语言·学习·算法·c