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];
    }
};
相关推荐
池央17 小时前
贪心算法-递增的三页子序列
算法·贪心算法
lrh12280017 小时前
详解K近邻(KNN)算法:原理、实现与优化
算法·机器学习
程途拾光15817 小时前
算法公平性:消除偏见与歧视的技术探索
大数据·人工智能·算法
秋风战士17 小时前
无线通信算法之340:信道均衡除法定标讨论
算法·fpga开发·信息与通信
沧澜sincerely17 小时前
蓝桥杯算法练习
算法·职场和发展·蓝桥杯
一起养小猫18 小时前
Flutter for OpenHarmony 进阶:手势识别与碰撞检测算法深度解析
算法·flutter·harmonyos
Herbert_hwt18 小时前
数据结构与算法绪论:为何学、学什么、如何避坑
c语言·数据结构·算法
XX風18 小时前
1-3-kernel PCA
算法
今儿敲了吗18 小时前
11| 子集
c++·笔记·算法
Jinuss18 小时前
源码分析之React中Scheduler调度器的最小二叉堆
javascript·算法·react.js