
算法
文章平均质量分 75
icy_xm
幸亏还年轻
展开
-
十大常用编程算法
算法一:快速排序算法快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。快速排序使用分治法(Divide and conquer)策略来把一转载 2014-11-19 16:15:34 · 811 阅读 · 0 评论 -
两个变量a,b,不用判断语句,找出两个中比较大的那个变量
不使用if-else或者其他三目运算符等等一切判断语句。原创 2014-11-03 15:26:41 · 713 阅读 · 0 评论 -
雷神3开方算法解析,游戏运行速度提高四倍。
我们平时经常会有一些数据运算的操作,需要调用sqrt,exp,abs等函数,那么时候你有没有想过:这个些函数系统是如何实现的?就拿最常用的sqrt函数来说吧,系统怎么来实现这个经常调用的函数呢?虽然有可能你平时没有想过这个问题,不过正所谓是“临阵磨枪,不快也光”,你“眉头一皱,计上心来”,这个不是太简单了嘛,用二分的方法,在一个区间中,每次拿中间数的平方来试验,如果大了,就再试左区间的中间数;转载 2014-11-28 13:49:42 · 4860 阅读 · 0 评论 -
全排列(含递归和非递归的解法)
用Java写一个函数, 如 Foo(const char *str), 打印出 str 的全排列,如 abc 的全排列: abc, acb, bca, dac, cab, cba一、 递归版本1、算法简述简单地说:就是第一个数分别以后面的数进行交换E.g:E = (a , b , c),则 prem(E)= a.perm(b,c)+ b.perm(a,c)+ c.perm原创 2015-04-22 16:32:32 · 565 阅读 · 0 评论