ONE:《D is for digital》 记得以前关注的某位博主也在博文中提到这本书。 确实一本科很好的科普类书籍,涉及到的知识不少,包括简单的计算机组成原理,编程,算法(二分查找、选择排序、快排、快排、NP难题),操作系统,通信技术(无线网络、简单的移动网络(蜂窝网络)和手机通信原理等),.....
分类:
其他好文 时间:
2015-05-23 15:24:48
阅读次数:
309
1.双层for循环外层循环执行一次,内层循环会全部执行,总执行次数为"外层循环次数"*"内层循环次数"。案例31:输出结果:案例32:2.数组排序1)冒泡排序比较相邻的元素,将小的放到前面,大的放后面,比较一轮,会获取一个最大值在最后位置。案例33:输出结果:2)冒泡排序--轻泡..
分类:
编程语言 时间:
2015-05-21 19:46:06
阅读次数:
159
class Solution:
# @param {integer[]} nums
# @param {integer} target
# @return {integer}
def searchInsert(self, nums, target):
left, right = 0, len(nums)-1
while left <=...
分类:
其他好文 时间:
2015-05-21 14:17:08
阅读次数:
114
二分查找利用分治法,逐渐苏小查找范围,适用于有序数组。时间复杂度是O(log2N).PS:二分查找算法的判定过程实际上可以借助一棵平衡二叉树来描述,中间位置的关键字可以看成二叉树的根节点。C++代码如下: 1 #include 2 using namespace std; 3 template .....
分类:
编程语言 时间:
2015-05-20 00:24:06
阅读次数:
130
算法:排序和查找(二分查找,归并排序,快速排序),位运算等。查找:顺序查找,哈希查找,二叉排序树查找,哈希表。二分查找可以解决:"旋转数组中的最小数字","数字在排序数组出现的次数"等问题。哈希表:优点:O(1)时间内查找一个元素的效率最高。缺点:需要额外的空间来实现哈希表。二叉排序树查找:对应二查...
分类:
编程语言 时间:
2015-05-18 22:33:39
阅读次数:
280
1.二分查找,找到value为target的一个元素的位置,找不到返回[-1,-1]
2.假设找到位置,且为index,分别向两边拓展即可。...
分类:
其他好文 时间:
2015-05-17 15:20:18
阅读次数:
85
1.变形的二分查找问题
2.最后A[mid]=target,index=mid
3.最后A[mid]!=target,又分A[mid]target两种情况,
4.if(A[mid]target),index=mid;...
分类:
其他好文 时间:
2015-05-17 15:18:22
阅读次数:
106
题意
A array contain N number, can you tell me how many different pair i,j that satisfy a[i] + a[j] = M and 1
0
思路:
用map记录会超时
所以想到手写二分。思考一下其实满足题目条件的对数和每个数字的位置并没有关系——排序+二分查找(范围来确定个数)即可。
code:
...
分类:
其他好文 时间:
2015-05-16 16:35:53
阅读次数:
98
题意:现在有一个n*m的矩阵A,在A中找一个H*H的正方形,使得其面积最大且该正方形元素的和不大于 limit。分析:开始以为是DP或者二维RMQ,其实用二分就可以做出来; 在输入时构造元素和矩阵dp[][](即dp[i][j]为从(1,1)到(i,j)的矩形范围元素和);再在(0,min(m...
分类:
其他好文 时间:
2015-05-16 01:27:53
阅读次数:
140