美文网首页
数据结构

数据结构

作者: JustinJwu | 来源:发表于2018-05-22 17:05 被阅读0次

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

堆栈:

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

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

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

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

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

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

队列:

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

算法:

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

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

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

相关文章

  • IOS开发_数据结构

    1、数据结构; 2、算法; 3、数据结构与算法; 1、数据结构; 1.1 概念: 数据结构:数据结构是计算...

  • py基础

    5Python集合容器 数据结构数据结构 一般将数据结构分为两大类: 线性数据结构和非线性数据结构。 线性数据结构...

  • 思维导图之数据结构+算法

    数据结构+算法 = 程序 数据结构比较 参考文章 数据结构与算法数据结构与算法(java)

  • 数据结构与算法分析:大纲]

    00数据结构与算法分析:大纲01数据结构:数组02数据结构:链表03数据结构:栈03数据结构:队列 本系列课程主要...

  • 数据结构:数组

    00数据结构与算法分析:大纲01数据结构:数组02数据结构:链表03数据结构:栈03数据结构:队列 数组 数组是一...

  • 数据结构—概述

    数据结构概述 数据结构概述:程序设计 = 数据结构 + 算法数据结构:数据元素之间存在所有特定关系的集合,数据结构...

  • OVS 源码分析整理

    OVS 核心代码 OVS 架构 OVS 主要的数据结构数据结构关系图主要的数据结构和数据结构的参数数据结构代码 d...

  • 01. 数据结构与算法绪论

    一、数据结构 1. 什么是数据结构 2. 数据结构的分类 3. 常用的数据结构 4. 数据结构的应用表现 二、算法...

  • 数据结构与算法 - 查找

    数据结构与算法系列文章数据结构与算法 - 时间复杂度数据结构与算法 - 线性表数据结构与算法 - 树形结构数据结构...

  • C#之数据结构(上)

    数据结构 一般将数据结构分为两大类: 线性数据结构和非线性数据结构。 线性数据结构有: 线性表、栈、队列、串、数组...

网友评论

      本文标题:数据结构

      本文链接:https://www.haomeiwen.com/subject/qbhtdftx.html