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