Browse Month

八月 2019

开发向-第一次项目经历:QTAV播放器开发实践

总结一下这次的项目经历

简单说下

不知不觉地,从Acm真正开始写程序,到现在已经一年多了,如今更是已经半只脚踏入大三了,成为名副其实的老学长了(ˉ▽ ̄~)~~从刚开始的 hello world 到现在搭建一个博客来自我学习,对这个IT行业我始终抱着赤诚之心,俗点来说,我也是希望通过自己的努力学习,能在将来有一个好的发展。
大二的这次暑假,我依旧留校学习,这篇文章也是这时候写的,旨在记录一下对我个人来说的:一次真正的项目开发经历,以供分享和记录自己的学习和成长。

[……]

继续阅读

算法-深入归并排序

归并排序的理解和实现

原理

  1. 将整个序列看成是 n 个长度为1的有序子序列
  2. 然后两两归并,得到 n/2 个长度为2的有序子序列
  3. 继续按照该策略归并,直到得到 1 个长度为n的有序子序列

上述过程即一次反向递归,也是归并排序的基本思想

可视化归并排序

归并排序

[……]

继续阅读

算法-深入堆排序

堆排序的理解和实现

原理

  1. 将一个无序序列建成一个堆,根据大顶堆或小顶堆的性质,堆顶元素为序列的最大(小)值
  2. 初始化建堆后,调整输出堆顶的最值元素,对剩余的序列
  3. 继续调整为大顶堆/小顶堆,调整输出堆顶的最值元素
  4. 如此循环,直到序列有序,具体过程得需要在代码中体会

可视化堆排序

堆排序

了解

大(小)顶[……]

继续阅读

算法-有趣的鸡尾酒排序算法

冒泡和鸡尾酒排序(双向冒泡)

鸡尾酒排序为什么叫鸡尾酒排序,我特地百度了下,由于排序过程类似搅拌,也叫鸡尾酒搅拌排序,具体现象可以根据下图观察得出

鸡尾酒排序算法可视化

原理:对待排序列进行双向的循环,采用冒泡排序的方式,在正向循环时把最大元素移动到序列末端,在逆向循环时把最小元素移动到前面

鸡尾酒排序

为了不影响C++代码的阅读,将注释写到了Python代码里

[……]

继续阅读

  • 1
  • 2