算法
文章平均质量分 78
啊哈程序
勤學如春起之苗,不見其增,日有所長。綴學如磨刀之石,不見其損,日有所虧。
展开
-
(一)算法之暴力破解法
1.暴力破解public class Baolipojie { /** * 鸡兔同笼 * 设鸡为x 兔为y */ @Test public void test1() { int HEAD = 50; int FOOT = 120; for (原创 2017-05-07 09:08:37 · 3812 阅读 · 0 评论 -
(二)算法之假设修正法
假设修正法:/** * 1.判断三个数的最大值 * a = 23 * b = 12 * c = 34 */ @Test public void test() { int a = 23; int b = 21; int原创 2017-05-07 09:09:33 · 948 阅读 · 0 评论 -
时间复杂度和空间复杂度
算法的时间复杂度和空间复杂度合称为算法的复杂度。1.时间复杂度(1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或转载 2017-07-30 09:51:33 · 385 阅读 · 0 评论 -
Java实现面试六个算法
查找算法典型的二分查找对于二分查找算法要求, 查找前的数据必须是已经排好序的, 然后得到数组的开始位置start和结束位置end, 取中间位置mid的数据a[mid]跟待查找数据key进行比较, 若 a[mid] > key, 则取end = mid - 1; 若 a[mid] //已经排好序的数组public static int binarySearch(int[]原创 2017-07-30 09:52:19 · 12824 阅读 · 3 评论