给定一个排序数组,在原数组中删除重复出现的数字,使得每个元素只出现一次,并且返回新的数组的长度。不要使用额外的数组空间,必须在原地没有额外空间的条件下完成样例给出数组A =[1,1,2],你的函数应该返回长度2,此时A=[1,2]。解题思路:相对而言,这道题因为是已经排好的序,所以比较简单。但同时题...
分类:
编程语言 时间:
2015-11-23 23:36:30
阅读次数:
182
冒泡排序: 一个数组中元素进行排序,无论是正序还是倒序,进行比较排序的次数应为最大次数(最大次数为数组长度),可能中间就已经完成大小排序但仍然有必要用最多的次数进行排序。 数组的长度计算方法为:sizeof(数组名)/sizeof(数组数据类型);
分类:
编程语言 时间:
2015-11-20 01:43:43
阅读次数:
207
一直以来自学java都没什么方法,除了工作中有少量接触之外,看完语法以后,不知道如何进步,无奈呀,只好坚持刷题练习,希望能有所积累和领悟。题目:生成100个0到99之间的随机整数,找出它们之中的最大者和最小者,并统计大于50的整数个数,排序数组,去重 import java.util.HashSe....
分类:
编程语言 时间:
2015-11-10 15:35:53
阅读次数:
221
1).2sum1.题意:找出数组中和为target的所有数对2.思路:排序数组,然后用两个指针i、j,一前一后,计算两个指针所指内容的和与target的关系,如果小于target,i右移,如果大于,j左移,否则为其中一个解3.时间复杂度:O(nlgn)+O(n)4.空间:O(1)5.代码: v...
分类:
其他好文 时间:
2015-11-07 14:47:24
阅读次数:
311
原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子例子为从小到大排序,原始待排序数组| 6 | 2 | 4 | 1 | 5 | 9 | 第一趟排序(外循环)第一...
分类:
编程语言 时间:
2015-10-28 17:16:13
阅读次数:
212
一. 二分搜索(Binary Search)模板及其理解1.通用模板,解决start, end, mid, (>=)等问题http://www.lintcode.com/en/problem/binary-search/class Solution {public: /** * @pa...
分类:
编程语言 时间:
2015-10-27 23:48:54
阅读次数:
339
桶排序,顾名思义,为要拍排序数组分配一些的”桶“来排序,什么意思呢?假如你有一个数组,其中包含10个元素,其中最大的数字是90,你就分配个90个以上的桶(假如定义一个int a[101]),你可以看到,10个数定义一个含100个元素的数组用来排序(当然,a[100]随便啦,你定义int a[100]...
分类:
编程语言 时间:
2015-10-18 22:55:06
阅读次数:
233
排序学习总结1.冒泡法总结:第一种冒泡方法:第一个位置的数字和后面相连位置的数字比较。只要后面位置的数字更小,就进行数据交换,再第二个位置数字和其后面相连位置的数字比较,只要后面位置的数字更大,就进行数据交换。依次比较到最后一个数字。原始待排序数组|6|2|4|1|5|9|第一趟排序(外循环)第一次...
分类:
编程语言 时间:
2015-10-15 20:25:44
阅读次数:
182
二分查找实现(Jon Bentley:90%程序员无法正确实现)作者:July出处:结构之法算法之道引言Jon Bentley:90%以上的程序员无法正确无误的写出二分查找代码。也许很多人都早已听说过这句话,但我还是想引用《编程珠玑》上的如下几段文字:“二分查找可以解决(预排序数组的查找)问题:只要...
分类:
其他好文 时间:
2015-10-14 00:16:29
阅读次数:
305