E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
LeetCode_栈与队列
栈与队列
及其应用C语言实现(数据结构复习最全笔记)(期末复习最新版)
一.栈的基本概念(1)栈是限定仅在表尾进行插入和删除操作的线性表。所谓的表尾是指栈顶,而不是栈底。(2)栈是后进先出的线性表。(3)把允许插入和删除的一端称为栈顶,另一端称为栈底。(4)不含任何元素的栈称为空栈。判定条件为top等于-1。(5)栈是一个线性表,栈元素具有线性关系。很明显不是的。二.栈的表示与实现(顺序栈)1.栈的顺序结构定义说一下我写的代码和课本上是一样的,和图片里的有所不同,本质
markconca的博客
·
2020-06-29 03:50
数据结构最全复习笔记
【数据结构】两栈共享空间的进一步理解
(关于书中“两栈共享空间”的知识点,大家可以看一下我之前的博客【大话数据结构】第四章总结——
栈与队列
)正文在书中95页提到了两栈共享空间的知识点,以下为原文对①中的理解:这里出现了一个n,还是比较好理解的
Hertter
·
2020-06-29 01:47
大话数据结构
【大话数据结构】第四章总结——
栈与队列
目录1、栈的定义2、栈的抽象数据类型3、栈的顺序存储结构及实现1、栈的顺序存储结构2、栈的顺序存储结构——进栈操作3、栈的顺序存储结构——出栈操作4、两栈共享空间5、栈的链式存储结构及实现1、栈的链式存储结构(简称链栈)2、栈的链式存储结构——进栈操作3、栈的链式存储结构——出栈操作6、栈的应用——递归1、斐波那契数列实现7、栈的应用——四则运算表达式求值1、后缀(逆波兰)表示法定义2、后缀表达式
Hertter
·
2020-06-29 01:46
大话数据结构
Leetcode_
程序员面试金典_面试题 01.04. 回文排列
题目:给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。回文串不一定是字典当中的单词。classSolution:defcanPermutePalindrome(self,s:str)->bool:tmp=Counter(list(s))odd_count=0fork,vintmp.items():ifv%2:odd_c
夬_syx
·
2020-06-29 00:37
Leetcode_
数组
1.两数之和题目描述:给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。代码:classSolution:deftwoSum(self,nums:List[int],target:int)->List[int]:L={}l=len(nums)foriinra
夬_syx
·
2020-06-29 00:37
LeetCode答案
Leetcode_
剑指Offer_面试题 01.06. 字符串压缩
题目:字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)。classSolution:defcompressString(self,S:str)->str:res=''S+=''length=len(S)count=1
夬_syx
·
2020-06-29 00:37
Leetcode_
剑指Offer_面试题06. 从尾到头打印链表
题目:输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。#Definitionforsingly-linkedlist.#classListNode:#def__init__(self,x):#self.val=x#self.next=NoneclassSolution:defreversePrint(self,head:ListNode)->List[int]:ifnothea
夬_syx
·
2020-06-29 00:36
Leetcode_
剑指Offer_面试题07. 重建二叉树
题目:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。思路:这道题要用到递归,每次先找到根节点,如何再用递归方法分别构造左右子树。#Definitionforabinarytreenode.#classTreeNode:#def__init__(self,x):#self.val=x#self.left=None#self.right=
夬_syx
·
2020-06-29 00:36
Leetcode_
程序员面试金典_面试题 01.03. URL化
题目:URL化。编写一种方法,将字符串中的空格全部替换为%20。假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的“真实”长度。(注:用Java实现的话,请使用字符数组实现,以便直接在数组上操作。)classSolution:defreplaceSpaces(self,S:str,length:int)->str:iflength==0:returnStmp=[]foriinrange(l
夬_syx
·
2020-06-29 00:36
Coursera北大《数据结构基础》之
栈与队列
本文基于Coursera北大课程《数据结构基础》,所有文中非标注图片均来自课件,侵删根据下图,通过访问形式划分的线性结构中,栈和队列属于顺序访问;按操作方式分,线性结构又可以划分为线性表、栈(LIFO)和队列(FIFO)三种形式,线性表在Coursera北大《数据结构基础》之线性表中已经学习过,这里进行栈和队列的学习。目录1.栈(stack)1.1栈的实现方式1.1.1顺序栈(Array-base
爱看动漫的李皮皮
·
2020-06-28 23:20
data
structure
《大话数据结构》--- 第四章
栈与队列
《大话数据结构》---第四章
栈与队列
栈(Stack)是限定仅在表尾进行插入和删除操作的线性表。把允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何数据元素的栈称为空栈。
weixin_30691871
·
2020-06-27 23:48
【学习总结】《大话数据结构》- 第8章-查找
【学习总结】《大话数据结构》-总启示:
栈与队列
栈是限定仅在表尾进行插入和删除操作的线性表队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表目录8.1开场白8.2查找概论8.3顺序表查找8.4
weixin_30642267
·
2020-06-27 22:29
IT学习的计算机网络内容
大话数据结构》、《数据结构(C#语言描述)》、《剑指Offer》①线性表部分:线性表(上){数组、ArrayList}线性表(中){单链表、双链表、LinkedList}线性表(下){循环链表、约瑟夫问题}②
栈与队列
部分
weixin_30597269
·
2020-06-27 22:37
【学习总结】《大话数据结构》- 第4章-
栈与队列
【学习总结】《大话数据结构》-总启示:
栈与队列
栈是限定仅在表尾进行插入和删除操作的线性表队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表目录4.1开场白4.2栈的定义4.3栈的抽象数据类型
weixin_30520015
·
2020-06-27 20:29
数据结构学习笔记 Day 7
大话数据结构数据结构介绍算法推导大O阶的方法顺序结构与链式结构差异
栈与队列
的应用串的朴素模式匹配KMP模式匹配算法;二叉树前中后序遍历赫夫曼树及应用图的深度广度遍历最小生成树两种算法最短路径两种算法拓扑排序与关键路径算法折半查找插值查找斐波那契查找等静态查找稠密索引分块索引倒排索引等索引技术二叉排序树平衡二叉树等动态查找
iqyqqqqqq
·
2020-06-27 13:44
堆
栈与队列
(stack和queue)
Stack简介stack是堆栈容器,是一种“先进后出”的容器。stack是简单地装饰deque容器而成为另外的一种容器。#includestack对象的默认构造stack采用模板类实现,stack对象的默认构造形式:stacks;stacks;//一个存放int的stack容器。stacks;//一个存放float的stack容器。stacks;//一个存放string的stack容器。//
ukston_C
·
2020-06-27 10:42
STL
基础学习笔记
数据结构 - 二叉树 - 面试中常见的二叉树算法题
数据结构-二叉树-面试中常见的二叉树算法题数据结构是面试中必定考查的知识点,面试者需要掌握几种经典的数据结构:线性表(数组、链表)、
栈与队列
、树(二叉树、二叉查找树、平衡二叉树、红黑树)、图。
从零开始的异世界生活
·
2020-06-27 03:59
算法
java
数据结构
数据结构 - 红黑树
数据结构-红黑树-面试常问知识点数据结构是面试中必定考查的知识点,面试者需要掌握几种经典的数据结构:线性表(数组、链表)、
栈与队列
、树(二叉树、二叉查找树、平衡二叉树、红黑树)、图。
从零开始的异世界生活
·
2020-06-27 03:59
数据结构
算法
大话数据结构学习笔记 -
栈与队列
大话数据结构学习笔记-
栈与队列
栈栈是限定尽在表尾进行插入和删除操作的线性表。允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。
小小池鱼儿
·
2020-06-27 00:34
数据结构
C
《大话数据结构》----第四章---
栈与队列
(学习小结)
一、栈和队列是啥??栈是限定仅在表尾进行插入和删除操作的线性表。队列是只允许在一端进行插入操作、而在另一端进行删除操作的线性表。二、解释下栈的特点?2.1如何理解栈?我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出(LasfInFirstOut)的线性表,简称LIFO结构。首先它是一个线性表,也就是说,栈元素具有线性关系,
爱打王者的码农
·
2020-06-26 23:02
学习资料
Python剑指offer之两个栈实现一个队列-两个队列实现一个栈
栈与队列
之间的相互实现,是面试中的经典试题。
海晨威
·
2020-06-26 13:08
Python实现数据结构
大话数据结构总结
线性表
栈与队列
串树度:节点拥有的子树数。(叶子节点(终端节点、分支节点)度为0)。树的度:树内各节点的度的最大值。树的深度(高度):树中节点的最大层次。
柯南.道尔
·
2020-06-26 10:23
数据结构与算法
数据结构:栈(C语言实现)
栈与队列
都可以称作运算受限的线性表具体来讲它的定义,栈是限制在表的一端进行插入和删除的线性表。允许插入、删除的这一端称为栈顶,而距离栈顶最远的(即另一个固定端)称为栈底,当表中没有元素时成为空栈。
秋笙子
·
2020-06-26 03:08
数据结构
【数据结构02】
栈与队列
我们今天主要来谈谈“栈”以及队列这两种数据结构。回顾一下上一章中【数据结构01】数组中,在数组中只要知道数据的下标,便可通过顺序搜索很快查询到数据,可以根据下标不同自由查找,然而今天要讲的“栈”以及队列这两种数据结构访问是受限制的,只允许在一端读取、插入和删除数据,这时候对它存在的意义产生了很大的疑惑。因为会觉得,相比数组和链表,栈带给我的只有限制,并没有任何优势。那我直接使用数组或者链表不就好了
宜春
·
2020-06-26 03:10
数据结构与算法
数据结构笔记——
栈与队列
在数据结构里面,我们学习的重点不是如何使用
栈与队列
,而是学习这个容器的运行基本原理,为我们日后对容器应用的拓展打下基础。
雨潇ヽ
·
2020-06-26 01:21
数据结构
【数据结构】停车场管理(
栈与队列
)
概要设计以栈模拟停车场,以队列模拟停车场外的便道自定义数据结构,顺序栈与链队列停车场模拟的过程大致描述如下:初始化停车场栈、辅助栈和队列;从终端读入数据If(到达){判断停车场栈是否满;若停车场栈不满将车辆信息入停车场栈,输出车辆在停车场栈中位置;否则将车辆信息入队列,输出车辆在队列中位置;}else{在停车场栈内查找要离去的车辆若找到{判断车辆所在位置若在栈顶{将要出停车场栈车辆出停车场栈;输出
白马非马lxl
·
2020-06-25 22:56
数据结构
第八章 生成数据
线性表数组实现链表
栈与队列
树与二叉树树二叉树基本概念二叉查找树平衡二叉树红黑树图8.2自建数据类型的原因程序语言所赋予你的阐明自己对程序理
iswust
·
2020-06-25 18:49
数据结构实验二_
栈与队列
基本操作的编程实现(C语言)
一、实验题目
栈与队列
基本操作的编程实现二、实验要求栈和队列基本操作的编程实现,掌握栈和队列的建立、进栈、出栈、进队、出队等基本操作的编程实现,也可以进一步编程实现实用的功能等操作,具体编程存储结构要求是顺序存储结构和链表存储结构
老头儿ii
·
2020-06-25 18:47
数据结构
大话数据结构--第四章学习笔记--
栈与队列
大话数据结构真的是一本好书,有这样系统的学习之后感觉自己零散的知识点回忆都被放入了整齐的盒子中。4栈和队列①栈stack是只允许在尾部(栈顶)进行添加和删除数据元素的线性表(先进后出)。可应用在Word等的撤销操作。操作:进栈(push),出栈(pop)。顺序存储的python代码如下:(用list实现)#栈的顺序实现classstack:def__init__(self):self.item=[
皮卡猪猪
·
2020-06-25 18:24
python编程学习心得
补充基础:
栈与队列
模型
10、补充基础:
栈与队列
模型(1)QueuePriorityQueuePriorityQueue是Queue队列实现类,PriorityQueue保存队列元素的顺序不是按照加入队列的顺序,而是按照队列元素的大小进行重新排序
北鼻coder
·
2020-06-25 15:00
传智播客Python就业班
飞机大战第2章python核心编程第1节.python核心编程第2节linux系统编程第3节网络编程第4节web服务器案例第5节正则表达式第3章数据结构与算法第1节数据结构和算法基础第2节顺序表第3节
栈与队列
第
qq_36469210
·
2020-06-25 11:11
Python
POJ 滑动窗口(优先队列的应用)
数据结构与算法A(第三章
栈与队列
练习题):滑动窗口思路对于最大最小值分别维护一个优先队列(保存元素下标)。以最小值为例。每次遇到一个新元素,从队尾插入。插入时删去队列中比该值大的元素。
PKU_CXK
·
2020-06-24 20:44
POJ-OJ
算法
Leetcode_
初级算法_数组_加一
问题重复:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位,数组中每个元素只存储单个数字。你可以假设除了整数0之外,这个整数不会以零开头。示例1:输入:[1,2,3]输出:[1,2,4]解释:输入数组表示数字123。示例2:输入:[4,3,2,1]输出:[4,3,2,2]解释:输入数组表示数字4321。思路:从高位开始,判断如果需要加1这个1应该加在哪里
岳麓山炒粉
·
2020-06-24 17:48
leetcode
【
Leetcode_
总结】 409. 最长回文串 -python
Q:定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如"Aa"不能当做一个回文字符串。注意:假设字符串的长度不会超过1010。示例1:输入:"abccccdd"输出:7解释:我们可以构造的最长的回文串是"dccaccd",它的长度是7。思路:首先回文串肯定是奇数个字符,思路是统计字符串中是偶数个的字符如果是加1统计奇数个的字符,如果大于
Maka_uir
·
2020-06-24 13:37
Leetcode
leetcode_
数组合并
88.合并两个有序数组给定两个有序整数数组nums1和nums2,将nums2合并到nums1中,使得num1成为一个有序数组。说明:初始化nums1和nums2的元素数量分别为m和n。你可以假设nums1有足够的空间(空间大小大于或等于m+n)来保存nums2中的元素。示例:输入:nums1=[1,2,3,0,0,0],m=3nums2=[2,5,6],n=3输出: [1,2,2,3,5,6]利
Crownt
·
2020-06-23 23:52
leetcode
leetcode_
查找相关问题
查找问题的思路查找问题一般分为两类:查找有无,这样的查找问题多用set解决查找对应关系(键值对应),这样的问题多用map解决在查找问题中,难点往往是分析出需要查找的是什么,然后将待查找的内容放入查找表中(set/map)注意:在java中,set/map的底层实现有两类,一类是基于红黑树实现的TreeSet/TreeMap,另一类是基于哈希表实现的HashSet/HashMap,在增删查的过程中基
Crownt
·
2020-06-23 23:52
leetcode
Java中使用LinkedList实现
栈与队列
Java中的LinkedList是采用双向循环列表实现的。利用LinkedList可以实现栈(stack)、队列(queue)、双向队列(double-endedqueue)请看下面两个例子:1、栈(stack):后进先出(LIFO),仅对栈顶元素操作。importjava.util.LinkedList;classMyStack{privateLinkedListll=newLinkedList
南岸青栀
·
2020-06-23 22:26
Java
基础
《大话数据结构》第四章
栈与队列
1.栈是限定仅在表尾进行插入和删除的线性表允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何元素的栈称为空栈,栈又称为后进先出的线性表,简称LIFO结构。1.1栈的插入操作,叫做进栈,也称压栈,入栈。子弹如弹夹栈的删除操作,叫做出栈。子弹弹出弹夹1.2先进栈的元素是不是只能最后出栈?答案不一定,如果有3个元素,有5种可能的出栈顺序。1.3栈的顺序存储结构和实现1.3.1用数组实现栈,下标为0的
iteye_3535
·
2020-06-23 19:20
leetcode_
效率题解_[python/C++]_21. Merge Two Sorted Lists(合并2个有序链表)
相关题解:
leetcode_
效率题解_23.MergekSortedLists(合并k个有序链表)题目链接【题目】Mergetwosortedlinkedlistsandreturnitasanewlist.Thenewlistshouldbemadebysplicingtogetherthenodesofthefirsttwolists
Mosen_Huang
·
2020-06-23 16:45
&
C++
leetcode_
效率题解_[python/C++]_147. Insertion Sort List(链表插入排序)
相关题解:
leetcode_
效率题解148.SortList(链表归并排序)题目链接【题目】Sortalinkedlistusinginsertionsort.
Mosen_Huang
·
2020-06-23 16:45
&
C++
C++
数据结构 -《大话数据结构》读书笔记(2)
四、
栈与队列
4.1栈的定义栈栈是限定仅在表尾进行插入和删除操作的线性表。我们把允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何数据元素的栈称为空栈。栈又称为后进先出的线性表,简称LIFO结构。
huangkai033
·
2020-06-23 15:03
数据结构与算法
4.数据结构--
栈与队列
首先需要介绍栈和队列与线性表的关系栈:栈是限定在表尾进行插入和删除的线性表队列:队列是只允许在一段进行插入操作,在另一端进行删除操作的线性表栈基本概念:允许插入和删除的一端我们称为栈顶。另一端称为栈底。不含任何元素的栈我们称为空栈。栈又被称为先进先出的线性表,简称LIFO结构栈的插入操作称为进栈,压栈,入栈栈的删除操作称为出栈,弹栈因为栈本身就是特殊的线性表,素以上一章学的线性表的顺序和链式存储对
梁炜东
·
2020-06-23 12:11
[大话数据结构2]
栈与队列
文章目录栈和队列一、栈(一)栈的定义(二)栈的存储结构栈的基本操作4.5两栈共享空间4.6栈的链式存储结构及实现4.6.1栈的链式存储结构4.6.2进栈操作出栈操作4.8栈的应用-递归4.8.1斐波那契数列实现4.9栈的应用---四则运算表达式求解4.9.1后缀表示法的定义:4.10队列的定义循环队列4.13队列的链式存储结构及其实现栈和队列栈是一种仅允许在表尾进行插入和删除操作的线性表;队列是只
GJXAIOU
·
2020-06-23 09:37
C
数据结构
数据结构
《大话数据结构》笔记——第4章
栈与队列
文章目录4.1开场白4.2栈的定义4.2.1栈的定义4.2.2进栈出栈变化形式4.3栈的抽象数据类型4.4栈的顺序存储结构及实现4.4.1栈的顺序存储结构4.4.2栈的顺序存储结构——进栈操作4.4.3栈的顺序存储结构——出栈操作4.5两栈共享空间4.6栈的链式存储结构及实现4.6.1栈的链式存储结构4.6.2栈的链式存储结构——进栈操作4.6.3栈的链式存储结构——出栈操作4.7栈的作用4.8栈
bm1998
·
2020-06-22 18:25
#
《大话数据结构》笔记
数据结构与算法(4)-
栈与队列
目录一.栈的定义1.栈的定义2.进栈出栈变化形式二.栈的抽象数据类型三.栈的顺序存储结构及实现1.栈的顺序存储结构2.栈的顺序存储结构–进栈操作3.栈的顺序存储结构–出栈操作四.两栈共享存储空间五.栈的链式存储结构1.栈的链式存储结构2.栈的链式存储结构–进栈操作3.栈的链式存储结构–出栈操作六.栈的应用–递归1.递归定义:七.队列的定义八.队列的抽象数据类型九.循环队列1.循环队列的定义:十.队
Movle
·
2020-06-22 12:10
数据结构与算法
[读书笔记]-大话数据结构-4-
栈与队列
(一)-栈、共享栈和链栈
栈与队列
栈是限定仅在表尾进行插入和删除操作的线性表。队列是只允许在一端进行拆入操作、而另一端进行删除操作的线性表。栈的定义栈(stack)是限定仅在表尾进行插入和删除操作的线性表。
ae668536
·
2020-06-22 12:36
[读书笔记]-大话数据结构-4-
栈与队列
(二)-队列
队列的定义队列(queue)是只允许在一端进行拆入操作,而在另一端进行删除操作的线性表。队列是一种先进先出(FirstInFirstOut)的线性表,简称FIFO。允许插入的一段称为队尾,允许删除的一端称为队头。队列的应用非常频繁,例如排队,键盘输入到显示器输出等。队列的抽象数据类型ADT队列(Queue)Data'''同线性表。元素具有相同的类型,相邻元素具有前驱和后继关系。'''Operati
ae668536
·
2020-06-22 12:36
大话数据结构 -
栈与队列
大话数据结构第四章:
栈与队列
;栈、队列以及链表同属线性表。栈:先进后出;因此栈是只允许在表尾进行插入和删除的。进指压栈,出指弹栈。队列:先进先出,与排队一样,先进先出,先到先得。
KeeJee
·
2020-06-22 09:04
数据结构与算法
数据结构之表、栈、队列、树、图、哈希表、堆
数据结构与算法数据结构+算法=程序0.绪论抽象数据类型1.线性表1.1数组(顺序表)1.2.链表1.2.1链表的定义及特点2.2链表的实现2.
栈与队列
2.1.栈2.2队列3.树与二叉树3.1树3.2二叉树
MLcongcongAI
·
2020-06-22 01:58
计算机基础
数据结构及算法
软考(软件设计师知识点)--数据结构与算法基础
数据结构是计算机存储和组织数据的方式数据逻辑结构:线性结构、非线性结构(树形结构(没有环路)、图)4.线性表的定义:存储方式:顺序表(空间连续)、链表(单链表、循环链表、双向链表)(既存数据又存指针)5.顺序存储与链式存储对比:6.
栈与队列
队列
Michael-DYZ
·
2020-06-22 01:16
软件设计师
上一页
19
20
21
22
23
24
25
26
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他