算法
Xtick
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
冒泡算法及其改进
import java.util.Arrays;/** * Created by Niu on 16/11/28. */ public class BubbleSort { //版本A,最基本的冒泡排序算法 public static void BubbleSort1(int[] a,int lo,int hi){ int temp=0; for(原创 2016-11-28 21:00:37 · 558 阅读 · 0 评论 -
菲波那切数列问题(上台阶问题)
通常,在最开始学c语言的时候,写法如下:int fib(int n){ return n>2?n:fib(n-1)+fib(n-2); }但是算法时间复杂度太高,达到了O(2^n)。具体原因就是因为fib的实例重复使用了太多次。 递归算法的一种实例: 图引用自:学堂在线 实际需要的一种实例: 改进后的算法:int fib(int n){ int f=0; int原创 2016-11-18 23:21:03 · 1959 阅读 · 0 评论 -
求最长公共子序列LCS
问题描述:给定两个序列,例如 X = “ABCBDAB”、Y = “BDCABA”,求它们的最长公共子序列的长度。 下面是求解时的动态规划表,可以看出 X 和 Y 的最长公共子序列的长度为4: 输出一个最长公共子序列并不难(网上很多相关代码),难点在于输出所有的最长公共子序列,因为 LCS 通常不唯一。总之,我们需要在动态规划表上进行回溯 —— 从table[m][n],即右下角的格子,开始转载 2016-11-22 22:43:16 · 947 阅读 · 0 评论 -
算法和数据结构--快速排序
文章主要针对自己在理解快速排序过程中当时卡壳的点,记录了接触这个算法的经历,不是对快速排序算法原理的分析和理解。 两种思维 我在网上找到了两种理解快速排序比较好的思维方法,具体的思路写在了注释中: 方法一: private static void quickSort1(int[] nums, int start, int end) { //递归出口,千万别忘记,如果start==...原创 2018-09-21 20:19:28 · 301 阅读 · 0 评论
分享