![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
咭咭熊
这个作者很懒,什么都没留下…
展开
-
牛客网--刷题
1.描述:输入4个整数,分别为:A-B;B-C;A+B,B+C,计算A、B、C分别为?2.进制转换描述:将十进制数M转换为N进制数;原创 2022-06-30 16:21:43 · 277 阅读 · 1 评论 -
【数据结构】——堆
1.堆的介绍:(1)堆逻辑上是一棵完全二叉树;(2)堆物理上是保存在数组中;(3)满足任意节点的值都大于其子树中节点的值——大根堆,大堆 或者最大堆(4)相反,则是小根堆,小堆,或者最小堆。2.根据数组序列创建小根堆:分析:(1)index(代表要调整位置的下标) 如果已经是叶子节点,则整个调整过程结束;判断index 位置是否有孩子节点; 只对其判断是否有左孩子;因为堆是完全二叉树,即没有左孩子就一定没有右孩子; 判断是否有左孩子即判断左孩子下标是否越界,即l...原创 2021-02-19 20:18:12 · 119 阅读 · 0 评论 -
【数据结构】——二叉树题集
1.题目描述:根据二叉树的中序和后序遍历构造二叉树public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} TreeNode(int val) { this.val = val; } TreeNode(int val, TreeNode left, TreeNode right) { this.val = val; ...原创 2021-01-30 22:19:52 · 263 阅读 · 0 评论 -
【数据结构】——二叉树
目录1.二叉树(Binary Tree)介绍2.二叉树的特点3.二叉树的遍历——递归形式4.二叉树的遍历——非递归形式5.二叉树的层序遍历6.二叉树的基本操作1 .二叉树(Binary Tree)介绍:一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵称为左子树和右子树的二叉树组成。2. 二叉树的特点: 每个结点的度都不大于2; 每个结点的孩子结点次序不能任意颠倒。 3. 二叉树的遍历——递归形式(1)前序遍历...原创 2021-01-28 21:49:08 · 135 阅读 · 2 评论 -
【数据结构】——双向链表增删查找功能的模拟实现
1.双向链表:此链表中有两条方向不同的链。此链表的每个节点包括三个域:(1)数据域:存储节点的值(2)前驱指针域prev:指向其前驱(3)后继指针域next:存储数据元素的直接后继的地址(或位置)2.模拟实现:首先创建一个DoubeLinkedList类:class ListNode { private int data; private ListNode next; private ListNode prev; public L原创 2021-01-11 18:42:25 · 95 阅读 · 0 评论 -
【数据结构】——链表试题汇总详解(二)
链表试题:8.链表的回文结构:回文结构:即链表内容正反序列内容相同:如12521。分析:(1)找到链表的中间节点位置; (2)从中间位置开始,将链表后半部分反转; (3)定义引用,head从头往前走,slow从后往前走,直到head 和slow相遇,即说明此链表是回文结构。 //8. 链表的回文结构。——时间复杂度为O(n),空间复杂度为O(1) public boolean chkPalindrome(){ ...原创 2021-01-11 15:01:38 · 115 阅读 · 0 评论 -
【数据结构】——链表增删查改功能的模拟实现
1.链表:链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序来实现的。2.链表的模拟实现:首先,创建一个MyLinkedList类:class Node{ public int data;//实例成员变量 public Node next; public Node(){//无参构造 } public Node(int data){//带有一个参数的构造方法 th原创 2020-12-31 18:00:28 · 129 阅读 · 0 评论 -
【数据结构】——顺序表增删查找功能的模拟实现
1.顺序表:顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构。——本质是采用数组进行存储。——在数组上完成数据的增删查改。2.模拟实现:首先创建一个MyArrayList类:public class MyArrayList{ private int[] elem; private int usedSize;}(1)(2)(3)(4)(5)(6)(7)(8)(9)3.顺序表的问题:顺序表的缺点 (.原创 2021-01-01 21:40:15 · 268 阅读 · 0 评论 -
【数据结构】——链表试题汇总详解(一)
链表面试题:1. 删除链表中等于给定值 val 的所有节点。public void removeAllKey1(int key){ Node prev = this.head; Node cur = prev.next; while(cur != null){ if(cur.data == key){ prev.next = cur.next; }else{ prev = cur;原创 2021-01-06 10:27:36 · 184 阅读 · 0 评论