
数据结构
windawdaysss
学习使人进步
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
c#查找一个环上的所有递增序列
问题描述: 一个360度的圆环上以相同间隔有360个数据点,其中包含异常数据点(比如Nan),要求找到此环上的所有值连续增加的序列的集合。 解决思路: 1、首先从所给环中找到第一个数据下降的点或是异常点,以此作为递增序列查找的初始点,并进行保存; 2、从初始点开始循环,找到一个正常的数据点,则从下一个点开始循环搜寻增长序列,直到遇到异常数据或数值下降为止,若增长的数列所含数值个数大于等于2,对此序列进行保存; 3、当步骤2循环到末尾,若末尾的数值小于最开始的数值,将两者进行合并保存。 以下为代码实现部分,主原创 2021-05-27 10:27:35 · 293 阅读 · 0 评论 -
排序算法
本文总结数据结构中的几大排序算法,从原理、复杂度、稳定性和代码来逐步阐述。 首先明确一个概念: 稳定性:如果一个排序算法是稳定的,当有两个相等键值的记录S和R,且在原本的列表中R是出现在S之前,则在排序过后的列表中R也将会是在S之前。 一、冒泡排序 原理:对于列表任意相邻的两个元素进行比较,若前一个大于后一个,则两者进行交换,否则不交换。一趟冒泡下来,最大元素处在最后位置上,然后对前(n-1)个元素进行类似的操作,重复此过程,直到列表成为有序为止。 总共需要(n-1)次冒泡,第k次冒泡需要的比较次数为(n-原创 2020-09-27 14:28:27 · 200 阅读 · 0 评论