数据结构

知识点:堆栈,队列,排序算法

堆栈:

一.基本概念: 栈顶,栈底,出栈(pop),入栈(push),空栈

1.堆栈(Stack):先进后出的线性表(Last in first out ——LIFO)

特点:(1).只在其中一头(栈顶)进行数据的插入和删除

(2).先进后出或后进先出的 线性表

2.入栈:将元素添加到堆栈中 ,压栈(push)

出栈:将元素中堆栈中取出,弹栈(pop)

队列:

特点:先进先出(FIFO),两头都可以进行操作,队头(front)删除元素,队尾(rear)加入元素

算法:

1.冒泡排序—基本思想:比较两个相邻的数,将较小的放在前面,较大的放在后面,这样可以将这些数中最大的找出来放到最后,然后比较剩下的数,再在剩下的数中找出最大的,直到所有的数字都按照从小到大的顺序排列。

2.选择排序—基本思想:每趟从待排序的数据元素中选出最小(或最大)的一个元素,逐个排在已排好序的数列的最后,直到全部待排序的数据元素排完,选择排序相对于冒泡排序来说,他并不是每次发现逆序都交换,选择排序是不稳定的排序。

3.快速排序—基本思想:将一个大数组的排序问题,分解成两个小的数组的排序,而每一个小的数组又可以继续分解成更小的数组,这样这个数组的排序方式可以一直的递归分解下去,直到数组的大小最大为2。在第一次划分的时候选择一个基准元素,然后将它分解成左右两个无序的数组,并且,使得左边的所有数组元素都小于等于基准元素,右边的数组元素都大于等于基准元素,然后分别对左边和右边的数组递归做同样的操作。算法效率的关键在于如何分解数组,也就是如何确定数组的基准元素,或者选择数组中间的元素作为基准元素。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1 序 2016年6月25日夜,帝都,天下着大雨,拖着行李箱和同学在校门口照了最后一张合照,搬离寝室打车去了提前租...
    RichardJieChen阅读 10,639评论 0 12
  • 数据 元素又称为元素、结点、记录是数据的基本单位 数据项是具有独立含义的最小标识单位 数据的逻辑结构 数据的逻辑结...
    PPPeg阅读 14,677评论 0 15
  • 孩子三个月了,很可爱。每天我都在她身边,陪她睡觉,喂奶,给她洗衣服,洗澡。渐渐的感觉离不开她。我依然将就着和孩子她...
    31074170fd22阅读 1,085评论 0 0
  • 真奇怪,我得了一种一上体育课就难受的病,这不,又到了体测季,我隐约间仿佛看到了跑800米累成狗的自己。啊,今天我头...
    好玩的少女阅读 10,046评论 14 5
  • 今天是假期最后一天,一大早外面就雷雨交加的。看着窗外,很庆幸昨天虽然弄到很晚还是把假期作业的收尾工作完成了。吃过早...
    陈俞含0_0阅读 1,076评论 0 1

友情链接更多精彩内容