最近在LeekCode用java写一些算法时,经常遇到要使用栈和队列结构,使用栈的话,Stack已经不被推荐使用了,所以栈和队列我们通常都是用LinkedList这种双链表结构实现。Linkedlist是一个双向链表,操作起来非常方便,java也封装了很多的方法在这个双向链表里面。 题目:使用栈,L ...
分类:
其他好文 时间:
2021-05-24 10:25:56
阅读次数:
0
无论是向量、列表、还是栈和队列,其保存的元素之间都存在一个线性次序,故它们都属于线性结构,树则不然,其元素之间并不存在直接后继或直接前驱的关系。不过可以对树附加某种约束,从而确定某种线性次序,因此树属于半线性结构。树有着不计其数的变种,在算法理论以及实际应用中,它们都扮演着最为关键的角色。之所以如此 ...
分类:
其他好文 时间:
2021-05-24 09:33:21
阅读次数:
0
栈实现队列 思路 在数据结构中,栈本身就具有倒序的作用,因此,如果在一组元素全部进栈后,最后进栈的会最先被弹出,而队列是最先进入的元素就最先被弹出。 如图:如果以 1 2 3 4 分别进入栈和队列,左为栈的弹出结果,右为队列的出队结果,刚好相反 于是,如果把栈得到的结果再次进行一次入栈操作,再出栈时 ...
分类:
其他好文 时间:
2021-05-24 00:53:44
阅读次数:
0
代码地址: https://gitee.com/Tom-shushu/Algorithm-and-Data-Structure.git 一、ArrayList自定义封装 package com.zhouhong; /** * @ClassName: array * @Description: 二次封 ...
分类:
编程语言 时间:
2021-04-05 11:49:32
阅读次数:
0
前言 栈(Stack)是一种后进先出的数据结构,仅允许在栈顶插入、删除、读取。队列(Queue)是一种先进先出的数据结构,队头读取、删除,队尾插入。 使用数组实现栈 使用到的MyArrayList和MyLinkedList详情请查看 java实现一个自己的ArrayList和LinkedList p ...
分类:
编程语言 时间:
2021-01-01 12:59:10
阅读次数:
0
Collection集合重难点梳理,Collection集合学习目标,Collection集合详细讲义及源码,集合的特点详解,Collection-迭代器的基本使用及原理分析,增强for-注意事项和三种遍历的应用场景,数据结构之栈和队列特点,数据结构之数组和链表特点,ArrayList源码解析, L... ...
分类:
编程语言 时间:
2020-12-29 12:01:21
阅读次数:
0
Deque 是一种支持在两端进行操作的线性结构,包含了栈和队列的功能。Java 中建议使用 Dqueue 的实现来替代遗留的 Stack 类。本文将介绍 Deque 提供的主要 API。 ...
分类:
编程语言 时间:
2020-12-19 12:11:02
阅读次数:
6
/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ /** * Return an arr ...
分类:
其他好文 时间:
2020-11-26 14:41:52
阅读次数:
8
(一)基础概念 1. 数据结构 相互之间存在一种或多种特定关系的数据元素的集合。 2. 逻辑结构 指数据对象中数据元素之间的相互关系。 逻辑关系分为四种。分别是 集合、线性关系、树形关系和图。 l 集合 数据结构元素之间,除了同属于一个集合外,没有其它关系。 l 线性关系 数据结构元素之间是一对一的 ...
分类:
其他好文 时间:
2020-11-17 12:29:24
阅读次数:
4
标准库栈的实现 std::stack的成员函数:push():栈顶插入元素pop():删除栈顶元素empty():检查栈是否为空病返回一个布尔值size():返回栈的元素数量top():获得栈顶元素 1 #include <iostream> 2 #include <stack> 3 4 using ...
分类:
其他好文 时间:
2020-11-12 13:51:53
阅读次数:
5