数据结构与算法
xgq_Star
这个作者很懒,什么都没留下…
展开
-
简单排序算法(三)
快速排序是一种交换排序,使用分治法减小问题规模,再分别进行处理。另外快速排序一般是使用递归实现,如果待排序列规模较小,其效果不如简单插入排序。 简要原理:首先确定主元(基准),一头一尾两个数同时开始和主元比较,左边的数和主元比较,如果小就加一,如果大就停止。然后右边的数也一样,大就减一,否则停止,如果这两个数没有错位,则两数交换位置,重复这样的遍历过程直至错位,这就完成了一次划分。最后对这两部分分...原创 2020-05-06 19:53:03 · 232 阅读 · 0 评论 -
简单排序算法(二)
堆是一种特殊的二叉树(完全二叉树),一般情况下堆排序是用数组的方式实现的。 核心思想:利用最大堆(最小堆)输出堆顶元素,剩下的元素重新生成最大堆(最小堆),继续输出堆顶元素,重复此过程即可得到有序序列。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System...原创 2020-05-05 13:24:03 · 189 阅读 · 0 评论 -
简单排序算法(一)
简单排序算法一般有简单选择排序、直接插入排序、冒泡排序、希尔排序、堆排序、 快速排序、归并排序、基数排序这几种。 先写几个简单的: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 排序 { ...原创 2020-05-04 20:43:58 · 199 阅读 · 0 评论