
数据结构与算法
算法
小小渔夫
我只是一粒灰尘,呼吸着神圣的气息,是你使我转向你。
展开
-
递归与循环算法的比较
递归递归就是方法自己调用自己 ,每次调用时传入不同的变量 。递归有助于编程者解决复杂的问题 ,同时可以让代码变得简洁。循环在满足条件的情况下,重复执行同一段代码 。栗子有一个我们很熟悉的栗子,斐波那契数列:1,1,2,3,5,8,13,21........设f(n)是第n个斐波那契数,当n<=2,斐波那契数都为1;当n>2,那么第f(n)个斐波那契数就等于前两个斐波那契数之和。递归实现class Fib { public int.原创 2022-02-18 14:38:54 · 1741 阅读 · 0 评论 -
冒泡排序算法
简介冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 ...原创 2018-05-07 17:33:56 · 348 阅读 · 0 评论 -
快速排序算法
快速排序算法是对冒泡排序算法的一种改进,基本思路如下 先从数列中取出一个数作为基准数 分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边 再对左右区间重复第二步,直到各区间只有一个数 代码实现public static int Partition(int[] a, int p, int r) { int x = a[r - 1]; ...原创 2018-05-07 17:55:34 · 152 阅读 · 2 评论