C++学习笔记-----二分法之寻找非减序列第一个大于某个值的数或最后一个小于某个值的数

二分法在对有序序列的处理上可以达到O(lg(n))的时间复杂度,通常用在二分查找上。此时有一个有序序列,给定一个数n,n可以在这个序列中也可以不在,要求找到第一个大于n的数和第一个小于n的数。实际上,只需要在二分法的基础上稍加改动即可达到需求二分查找n的下标int binaryFind(vecto...

2017-08-05 19:20:39

阅读数 1413

评论数 2

一个整数数组,每个数字都出现K次,只有一个数字出现M次,找出这个数字(线性时间)

原题链接https://leetcode.com/problems/single-number-ii/description/ 这类题都是形如给定一个整型数组,数组中每一个数字都出现了K次,只有一个数字出现M次,其中M 首先考虑K = 2,M = 1的情况,可以使用XOR异或运算便利一边数组...

2017-08-01 00:47:17

阅读数 480

评论数 0

提示
确定要删除当前文章?
取消 删除