算法学习
sonny543
软件工程 本科 github https://github.com/sonnyfu/
展开
-
递归本质
public class Recursion { static int testFfinalRetCode(int code){ if(code==0) return code; int finaRet=testFfinalRetCode(--code);//注意不能带入code-- return ++finaR原创 2016-10-29 17:00:06 · 379 阅读 · 0 评论 -
堆排序
package Algorithm.structure;public class HeapSort { // static void heapS(int a[]){ //小顶堆排序,倒序输出则为升序 for(int j=a.length-1;j>=1;j--){ heapSPrint(a, 0,j); }原创 2016-11-13 23:50:37 · 346 阅读 · 0 评论 -
打印从1到n位数的最大数
//模拟法和递归法原创 2016-11-10 13:36:21 · 407 阅读 · 0 评论 -
数组逆序对数
package Algorithm.compet;public class ReversePairs { static int number; static int sum; static int mergeSort(int a[],int l,int r){ if(l==r){原创 2016-11-10 13:34:08 · 561 阅读 · 0 评论 -
最长公共子序列(Sequence not SubString)
public class LCSDP { /* *BackGround:LCS *1、初始化 *2、a[i][j]由a[i-1][j-1]等3种情况 */ static int lcsDP(String a,String b){ if(a==null||a==""||b==null||b=="") return 0原创 2016-09-17 21:42:30 · 352 阅读 · 0 评论 -
二分法返回字符串的位置
package compet;public class BinarysearchString { /** *题目:排序的的字符串数组("a"),其中插入了空字符串, *I:a,b, ,c,d, ,;6,c *O:3无则返回0 思路: 找到给字符串,去掉前面的空字符个数即得答案; 1、i<j为循环条件(首尾重合退出)原创 2016-08-07 11:35:30 · 955 阅读 · 0 评论 -
分治法之归并排序
/* * 归并排序:难点是merge函数的设计:简化就是用一个数组接收比较结果和复制到原来数组 * */原创 2016-06-23 08:32:17 · 442 阅读 · 0 评论 -
快速排序的java实现
快速排序的java实现原创 2016-06-18 16:31:17 · 386 阅读 · 0 评论 -
删除k个数使其最大(贪心非简洁版)
public class Kforax {/**1327 * 处理: * * @param a * @param k * @return */static int[] max(int a[],int k){ int i,j,n; int[] tmp=new int[a.length-k]; int[] result=new int[a.length-k];原创 2016-06-17 21:48:09 · 568 阅读 · 0 评论 -
回溯法之01背包问题
java实现01背包问题原创 2016-06-26 01:18:04 · 1005 阅读 · 0 评论 -
算法引论之多项式求解(递归和非递归实现)
/*多项式求解:输入:系数,阶数(决定项数),x值 输出:多项式的值递归本质:可以细分为小问题(递),然后小问题累积得出结果(归)-设计程序时,为找到出口点,并返回; 实现1:非递归;实现2:递归; */ #include #include #includeusing namespace std; int polynomialNorm1(in原创 2016-05-06 16:45:51 · 988 阅读 · 0 评论 -
C++标准库和STL的关系
STL是C++标准库的一个子集,即标准模板库,其实现运用了泛型的思维C++标准库的所有头文件都没有扩展名。C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能。 形式的标准头文件【 例外】其内容与ISO标准C包含的name.h头文件相同,但容纳了C++扩展的功能。在 形式标准的头文件中,与宏相关的名称在全局作用域中定义,其他名称在std命名空间中声明。在C++中还可以原创 2016-05-13 11:07:29 · 540 阅读 · 0 评论 -
树t1是否包含子树t2
class TreeNode{ int value; TreeNode left; TreeNode right;} public class ContaisSubTree { static boolean own; static TreeNode createTree(int a[]){ if(a==null||a.length==0)retu原创 2016-11-17 16:19:25 · 437 阅读 · 0 评论