面试
wenzi0615
这个作者很懒,什么都没留下…
展开
-
SIG面试总结
SIG的onsite被拒掉了,真的好可惜,去过之后才发现这公司工作气氛好,各种工作人员(包括reception、recruiter、interviewer)都人超好的。面试也不难,我还抱有一丝希望来着,总之,是没发挥好。原创 2016-10-18 03:42:02 · 3391 阅读 · 0 评论 -
冒泡排序(Bubble Sort)
/** * 1.1 冒泡排序: 在要排序的一组数中,对当前还未排好序的范围内的全部数, * 自上而下对相邻的两个数依次进行比较和调整,较小的往上冒,较大的下沉. * * EX: int[] nums={8,1,4,2,23,10}; < * * 1,8,4,2,23,10 *原创 2016-10-19 05:02:38 · 336 阅读 · 0 评论 -
快速排序(Quick Sort)
/** * 1.2 快速排序: 首先任意选取一个数据(通常选第一个)作为关键数据, * 然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面, * 即确定该数的最终位置,该数两边为两个区间,在它们中各找一个关键 * 数据继续进行前面的操作,直到所有区间都只有一个数为止,表示所有数 * 的最终位置都被确定 * * 一趟快速原创 2016-10-19 05:04:48 · 361 阅读 · 0 评论 -
简单选择排序(Simple Selection Sort)
/** * 2.1 简单选择排序: 在要排序的一组数中,选出最小的一个数与第一个位置的数交换; * 然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最 * 后一个数比较为止. * * EX: int[] nums={8,1,4,2,23,10}; < * * 8,1(m原创 2016-10-19 05:06:17 · 276 阅读 · 0 评论 -
归并排序(Merge Sort)
/** * 4. 归并排序: 归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表, * 即把待排序序列分为若干个子序列,每个子序列是有序的,然后再把有序子序列合并为整体有序序列. * * 步骤: * (1)用除二来划分数组,对最小单位为二的数组排序 * (2)合并两个数组并排序,具体方法为: * 在两原创 2016-10-20 02:47:11 · 353 阅读 · 0 评论 -
排序算法: 时间复杂度、空间复杂度、稳定性总结
参考: http://bigocheatsheet.com/原创 2016-10-20 03:41:56 · 270 阅读 · 0 评论 -
(直接)插入排序(Insert Sort)
/** * 3.1 直接插入排序: 每步将一个待排序的记录,按其顺序码大小插入到前面已经 * 排序的字序列的合适位置(从后向前找到合适位置后),直到全部插入排序完为止 * * EX: int[] nums={8,1,4,2,23,10}; < * * 8,1,4,2,23,10 *原创 2016-10-19 05:09:05 · 503 阅读 · 1 评论 -
9种常见排序算法总结
目录 1. 交换排序: 冒泡排序,快速排序. 2. 选择排序: 简单选择排序,堆排序. 3. 插入排序: 直接插入排序,二分法插入排序,希尔排序. 4. 归并排序 5. 基数排序import java.util.ArrayList;import java.util.List;public class Sort { /** * 1. 交换排序:冒泡排序,快速排序.原创 2016-10-20 03:58:29 · 368 阅读 · 0 评论