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];
    }
};
相关推荐
jllllyuz1 分钟前
MATLAB 蒙特卡洛排队等待模拟程序
数据结构·matlab
自我意识的多元宇宙13 分钟前
树、森林——树、森林与二叉树的转换(森林转换为二叉树)
数据结构
海清河晏11121 分钟前
数据结构 | 双循环链表
数据结构·链表
workflower23 分钟前
机器人应用-楼宇室内巡逻
大数据·人工智能·算法·microsoft·机器人·动态规划·享元模式
ZPC821029 分钟前
fanuc 机器人通过PR寄存器实现轨迹控制
人工智能·算法·计算机视觉·机器人
py有趣35 分钟前
力扣热门100题之编辑距离
数据结构·算法·leetcode
Wave8451 小时前
C++继承详解
开发语言·c++·算法
睡觉就不困鸭1 小时前
第9天 两数之和
算法·哈希算法·散列表
贾斯汀玛尔斯1 小时前
每天学一个算法--动态规划(Dynamic Programming, DP)
算法·动态规划
水木流年追梦1 小时前
CodeTop 热门题目汇总hot300题
算法·leetcode·职场和发展