随笔分类 -  算法练习与总结

全排列算法
摘要:1、字典排序 【例】 如何得到346987521的下一个 1,从尾部往前找第一个P(i-1) < P(i)的位置 4 6 <- 9 <- 8 <- 7 <- 5 <- 2 <- 1 最终找到6是第一个变小的数字,记录下6的位置i-1 2,从i位置往后找到最后一个大于6的数 4 6 -> 9 -> 8 阅读全文
posted @ 2016-07-14 16:39 人生一世,草木一秋。 阅读(772) 评论(0) 推荐(0)
递归算法
摘要:1. fibonacci数列的求解 fibonacc数列规律,前面两数值之和为后面一个数fibonacci数。 1 #include <stdio.h> 2 #include <stdlib.h> 3 /* 4 * 输入:指定产生fibonacci个数 5 * 输出:每4个数字一行输出fibonac 阅读全文
posted @ 2016-07-13 21:38 人生一世,草木一秋。 阅读(368) 评论(0) 推荐(0)
排序算法
摘要:1. 冒泡排序 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 /* 5 *max times:n*(n-1)/2 6 *根据大小交换相邻数值的位置,每次都会将最大的一个数字放在最后 7 *因此,每次从0开始,且每次执行完毕,则次数减1.关键注意j的取值 阅读全文
posted @ 2016-07-08 17:29 人生一世,草木一秋。 阅读(305) 评论(0) 推荐(0)
常用算法总结
摘要:常用算法总结 一、排序 http://www.cnblogs.com/fzhe/archive/2013/01/18/2866651.html 二、 查找 a) 顺序查找 b) 有序表的查找之折半查找 c) 索引表 a) 二叉排序树查找 b) 平衡二叉树 c) B-树 :常用于文件系统中 d) B+ 阅读全文
posted @ 2016-07-08 14:39 人生一世,草木一秋。 阅读(243) 评论(0) 推荐(0)