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];
    }
};
相关推荐
aqiu1111117 小时前
【算法刷题】蓝桥杯/AtCoder:删除元素后的中位数问题(Symmetry / Median)
算法·蓝桥杯·排序·中位数
圣保罗的大教堂7 小时前
leetcode 1386. 安排电影院座位 中等
leetcode
看我眼色行事^ \/ ^7 小时前
2024.05.11 360春招WEB前端编程题
算法
来一碗刘肉面7 小时前
有向无环图 DAG(描述表达式)
数据结构
一只肥瘫瘫7 小时前
编码器 PLL 角度与速度观测器原理
人工智能·算法
Nil2088 小时前
leetcode 146LRU缓存
算法·leetcode·缓存
郝学胜_神的一滴8 小时前
干货版《算法导论》18:遍历增删原理、时间复杂度与集合序列实现全解
数据结构·算法
-dzk-8 小时前
【滑动窗口】LC 3.无重复字符的最长子串
算法·滑动窗口
BK贝壳9 小时前
Python底层:1亿个布尔值缓存失效标记,list爆内存numpy爆拷贝,bool-hybrid-array混合存储实测
数据结构·python·缓存·性能优化·list·numpy
zzxdear9 小时前
用 OR-Tools CP-SAT 求解最简单的柔性作业车间调度(FJSP)
算法