算法
古怪945
腾讯文学rd
展开
-
排序算法性能和使用场景总结
按平均时间将排序分为四类:(1)平方阶(O(n2))排序 一般称为简单排序,例如直接插入、直接选择和冒泡排序;(2)线性对数阶(O(nlgn))排序 如快速、堆和归并排序;(3)O(n1+£)阶排序 £是介于0和1之间的常数,即0(4)线性阶(O(n))排序 如桶、箱和基数排序。各种排序方法比较转载 2014-05-23 09:21:53 · 574 阅读 · 0 评论 -
Java 翻转单链表
class Node { // 变量 private int record; // 指向下一个对象 private Node nextNode; public Node(int record) { super(); this.record = record; } public int getRecord() { return record; } public v转载 2015-02-02 22:21:27 · 539 阅读 · 0 评论 -
【算法】冒泡排序
冒泡排序计算机基本算法:用相邻元素两个比较大小,然后按照大小顺序依次调整,像气泡一样移动元素。时间复杂度:排序法最差时间分析平均时间复杂度稳定度空间复杂度冒泡排序O(n2)O(n2)稳定O(1)观看视频:http://www.tudou.com/programs/view原创 2015-02-08 21:48:25 · 550 阅读 · 0 评论 -
【算法】快速排序
快速排序:冒泡排序的改进,每次取数组第一个元素,然后轮训整个数组,找到中间位置,每次都将数据分开两部分,再次选择基准元素的中间为止,每次都把分开的部门再次分割,分治算法的体现。视频:http://www.tudou.com/programs/view/gtnrNh7yh6I/Java代码实现:package com;public class QuickSort原创 2015-02-08 23:16:42 · 440 阅读 · 0 评论 -
算法面试题
国内大型视频网站面试题:有个mysql的数据库表,有个字段表示状态1和0,然后把整个表里面的1和0反过来,比如原来 张三,0 李四,1 执行后是张三1,李四 0答案:对该列做-1操作,然后取反,这样原来是1的变成0,然后0的变成-1,取绝对值即可。sql update XX 字段=ABS(字段-1);国内大型视频网站面试题:有个整型数组,里面出现的数字都是成对出现的,比如{1,2原创 2015-03-25 16:16:50 · 871 阅读 · 0 评论 -
Java 二分查找算法(递归和非递归)
技术要点:二分查找又称折半查找1.必须采用顺序存储结构2.必须按关键字大小有序排列也就是说:二分查找算法要求待查找的数组已经排序过。public class BinarySearch { public static void main(String[] args) { int[] src = new int[] {1, 3, 5, 7, 8, 9}; Sy转载 2015-03-03 18:31:36 · 566 阅读 · 0 评论