
数据结构 算法
文章平均质量分 69
fulisha_la
A promise tomorrow is worth a lot less than trying tody
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基础算法3_选择排序(简单选择排序+堆排序)
基本思想:选择排序 顾名思义就是要进行选择,如对9 6 11 7 进行排序,第一趟排序从这四个数中选出最小的数7 排在第一个 接下来就从剩余的三个数中选择最小的一个 那么选择排序基本就是这个思想。 1.简单选择排序(直接看代码) //核心算法 //A是待排序数组 n是表长 public void SelectSort(int[] A,int n ){ int i,j,min;//m...原创 2020-01-13 14:34:41 · 234 阅读 · 0 评论 -
基础算法2_交换排序(冒泡排序+快速排序)
基本思想:交换排序顾名思义就是将两个数进行比较来交换两个数在记录中的位置,例如6 4 2 5 例如6和2进行比较,(由小到大排序)6和2交换位置 主要算法 1》.冒泡排序 冒泡排序:待排序数从后往前 或者从前往后 两两比较,若为逆序则交换,知道所有的数都比较完,则为一趟排序,每一趟排序后就有一个数被确定在最终位置。举个例子: 所以 ,在冒泡排序中最主要要学到的就是 怎么进行两两交换数的...原创 2020-01-11 15:03:30 · 169 阅读 · 0 评论 -
基础算法1_插入排序(直接插入+折半插入+希尔排序)
基本思想:将一个待排序的数插入到已排好序的关键字中,直到所有数排好。如 2 5 8 12 插入数7 则需要找到插入的位置即位置3,则需要移动8 12 移动元素后插入。 主要的排序算法: 说明:数组A[0]不放排序元素 从A[1]开始排序 1》直接插入排序算法 package suanfa; public class InsertSort { //核心算法 //A是待排序数组 ...原创 2020-01-10 21:21:44 · 190 阅读 · 0 评论 -
数据结构:递归应用---Hanoi问题(汉诺塔)
问题描述: 有三根相邻的柱子,标号为A,B,C,A柱子上从下到上按金字塔状叠放着n个不同大小的圆盘,要把所有盘子一个一个移动到柱子C上,并且每次移动同一根柱子上都不能出现大盘子在小盘子上方,请问至少需要多少次移动? 分析: 尽量把问题往简单考虑 这样一个思路:1.如果n等于1 直接将其移到C上 ; 2.如果n>2 则就需要B柱子来做辅助 A:(如何来进行移动 同时还要保证上...原创 2019-04-04 15:54:59 · 803 阅读 · 0 评论