常用算法
lackiechan
多读一本好书 胜于虚度年华
展开
-
几种排序算法的稳定性和时间空间复杂度
稳定排序:(排序算法名称)、(平均时间复杂度)、(空间复杂度)冒泡排序、O(n2)、1插入排序、O(n2)、1归并排序、O(n2)、1二叉树排序、O(nlogn)、O(n)不稳定排序:(排序算法名称)、(平均时间复杂度)、(空间复杂度)选择排序、O(n2)、1希尔排序、O(nlogn)、1堆排序、O(nlogn)、1快速排序、O(nlogn)、O原创 2012-10-17 09:59:23 · 450 阅读 · 0 评论 -
约瑟夫问题的解决
约瑟夫问题:编号从1到N的N个人围成一个圈 ,从第一个人开始,传递一个马铃薯,在M次传递后,拥有马铃薯的人离开圈子,圈子缩小,离开的人的后面一个人捡起马铃薯传给下一个人,最后留下来的是嬴者。原创 2012-10-17 10:25:03 · 99 阅读 · 0 评论 -
检查一个数组是否出现重复数字的算法(时间复杂度O(n的平方))
这是一个检查数组是否出现重复数字的简单平方算法public class Duplicates { public static boolean duplicates(int... a){ for(int i=0;i<a.length;i++){ for(int j=i+1;j<a.length;j++){ if(a[i]==a[j]) return true;原创 2012-10-17 01:14:59 · 1419 阅读 · 0 评论 -
用链表实现栈
栈只能在栈顶操作package suanfa;public class PersonStack implements Stack{ Stack为自定义的一个接口 private int size; private Node top; @Override public void clear() { this.top=null; this.size=0; } @Overri原创 2012-10-17 12:43:31 · 452 阅读 · 0 评论 -
递归调用例子
1、Fibonacci数 1 2 3 5 8 13 21 34 35 89...(把们看到的经典编程兔子问题就是斐波纳契数列)递归效率比较低public static long fibonacci(int n){ if(n==1) return 1; else return fibonacci(n-1)+fibonacci(n-2原创 2012-10-17 00:39:29 · 482 阅读 · 0 评论 -
java实现的二分法查找(分治法)
对有序的数组可以用二分法查找出要查的数(这是递归查找)那么假如给我们的条件是一个无序的数,那么我们先将数进行排序(各种排序算法请看我的其他文章),然后查找。package suanfa;/** * 二分查找平均时间复杂度 O(logN) * 说明:数组array是一个有升序的数组 * @author lackiechan * */public class BinarySea原创 2012-10-18 11:09:34 · 1148 阅读 · 0 评论 -
顺序查找java实现
顺序查找java实现package suanfa;public class OrderSearch { /**顺序查找平均时间复杂度 O(n) * @param searchKey 要查找的值 * @param array 数组(从这个数组中查找) * @return 查找结果(数组的下标位置) */ public static int orderSearch(int原创 2012-10-18 11:23:30 · 3066 阅读 · 0 评论 -
java冒泡排序、插入排序、快速排序、选择排序、堆排序
package suanfa;/** * @author lackiechan * */public class Sort { /** * 插入排序 稳定性:稳定 时间复杂度(n2) * 1、直接插入排序法 * 算法思想:1、把n个要排序的数组看成一个含有1个已排序有序表和一个含有n-1个未排序的元素的无序表 * 2、从无序表中取出第i(取n-1次)个原创 2012-10-17 10:13:19 · 637 阅读 · 1 评论 -
找出A字符串中 B字符串没有的字符(运用java api)
找出A字符串中 B字符串没有的字符(运用java api)package com.wy.servlet;public class H { public static void hk(){ String a="hello n meizu"; String b="n"; char[] c = b.toCharArray(); for(int i=原创 2012-10-24 00:06:51 · 2225 阅读 · 0 评论