数据结构与算法
文章平均质量分 73
流金岁月5789651
开始,新的一段旅程
展开
-
数据结构:栈和队列
栈(Stack)栈是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。栈的两端分别为栈顶和栈底。概念入栈又称作进栈(压栈)。向一个栈插入新元素,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素。出栈又称作退栈。从一个栈删除元素,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。特点先进后出(LIFO)方法E push(E item)把item压入栈顶部E pop()移除堆栈顶部的对象,并返回该对象。E peek()原创 2022-05-01 22:01:55 · 646 阅读 · 0 评论 -
数据结构:数组和链表
数组定义数组是将元素在内存中连续存放,由于每个元素占用内存相同,可以通过下标迅速访问数组中任何元素。内存位置数组从栈中分配空间逻辑结构数组必须事先定义固定的长度(元素个数),不能动态地增减数据。应用场景快速访问数据,很少插入和删除元素,就应该用数组特点存取方式上,数组可以顺序存取或者随机存取存储位置上,数组逻辑上相邻的元素在物理存储位置上也相邻数组在静态存储分配情形下,存储元素数量受限制,动态存储分配情形下,虽然存储空间可以扩充,但需要移动大量元素,导致操作效率降低,而且如果内存中原创 2022-03-29 09:28:17 · 260 阅读 · 0 评论 -
数据结构:二叉树基础入门
定义二叉树由一个根节点和两个互不相交的、分别称为根节点的左子树和右子树的二叉树组成。二叉树种类满二叉树对于一棵二叉树,如果每一个非叶子节点都存在左右子树,并且二叉树中所有的叶子节点都在同一层中,这样的二叉树称为满二叉树。完全二叉树除了叶子节点外每一个节点都有左右子叶且叶子节点都处在最底层的二叉树。对于完全二叉树,若某个节点数为i,左子节点位2i+1,右子节点为2i+2。二叉搜索树又称二叉查找树或者二叉排序树。二叉搜索树具有下列性质:若左子树不空,则左子树上所有节点的值均小于它的根节点的原创 2022-03-07 21:05:46 · 1440 阅读 · 0 评论