![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 77
onion0715
一名编程学习者
展开
-
程序员面试、算法研究、编程艺术、红黑树、数据挖掘5大系列集锦
程序员面试、算法研究、编程艺术、红黑树、数据挖掘5大经典原创系列集锦与总结 (部分博文github优化版阅读地址:https://github.com/julycoding/The-Art-Of-Programming-By-July) 作者:July--结构之法算法之道blog之博主。 时间:2010年10月-2014年11月。 出处:http://blog.csdn.net转载 2014-11-16 17:43:17 · 507 阅读 · 0 评论 -
算法-全排列问题
背景-有一个字符串数组abcd,求这是个字母的所有排列. 有数学知识可知全排列的结果为n! 那么用程序如何列出这些排列呢? 1.递归 我们知道手工排列的话,肯定是按照顺序一步一变的. 我们用(a,b)表示ab的全排列 那么(a,b)=a(b)+b(a); 同理: (a,b,c)=a(b,c)+b(a,c)+c(a,b) 于是递归思想就出现了,具体参看下列算法(java版):原创 2014-12-22 13:43:38 · 425 阅读 · 0 评论 -
算法-回溯
回溯是一个非常重要的求解策略,简单来说就是通过不断的试探,返回来找到可行解. 一.迷宫问题 在迷宫问题中,我们用一个M*N的矩阵表示地图,0表示可行,1表示阻塞. 回溯算法的描述1,使用栈: 用-1表示该点已经查询过.假设地图周围有一圈不可走的封闭的墙 (全部=1) 从一个起点开始,按顺时针方向查询该点下一个可走的范原创 2014-12-22 13:48:59 · 456 阅读 · 0 评论 -
算法-素数相关
素数定义: 整数p不等于0,正负1,正负p,且除了正负1,正负p外没有其他约数,那么称整数p为质数或者素数.如果不做特别说明,素数或质数指的是正整数中的质数或者素数. 问题1:判断一个数是否为素数? 朴素的素数判定方法是通过枚举从2-n^0.5 ,看它是否能整除n.时间复杂度为O(n^0.5) 问题2:素数的筛法,列举不大于n的所有素数. 介绍一个简单理解的算法 让每个找原创 2014-12-22 13:39:51 · 488 阅读 · 0 评论 -
算法--逆序对
逆序对 设 A 为一个有 n 个数字的有序集 (n>1),其中所有数字各不相同。 如果存在正整数 i, j 使得 1 ≤ i A[j],则 这个有序对称为 A 的一个逆序对,也称作逆序数。 解法一: 说明:穷举,两层for循环依次比对。 输入:数组A[] 输出:逆序对数目 Java代码: public static int countInversion(int[] a){原创 2015-03-08 20:39:45 · 912 阅读 · 0 评论 -
算法---全排列
背景-有一个字符串数组abcd,求这是个字母的所有排列. 有数学知识可知全排列的结果为n! 那么用程序如何列出这些排列呢? 1.递归 我们知道手工排列的话,肯定是按照顺序一步一变的. 我们用(a,b)表示ab的全排列 那么(a,b)=a(b)+b(a); 同理: (a,b,c)=a(b,c)+b(a,c)+c(a,b) 于是递归思想就出现了,具体参看下列算法(java版): s原创 2015-03-10 21:28:39 · 326 阅读 · 0 评论