
Java数据结构
唐火
开始人工智能之路了!!!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java实现Huffman哈夫曼树(数组实现)
代码如下: package HuffmanTreeArrays; import java.util.ArrayList; import java.util.Scanner; public class HuffmanTree { private class TreeNode { private int val; private int left; private int right; private int parent;原创 2021-11-17 14:35:24 · 326 阅读 · 0 评论 -
Java实现Huffman哈夫曼树
代码如下: package HuffmanTree; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class HuffmanTree { private class TreeNode { private int val; private TreeNode left;原创 2021-11-16 23:54:26 · 363 阅读 · 0 评论 -
Java实现AVL平衡树
代码如下: package AVLTree; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class AVLTree { private class TreeNode { private int data; TreeNode left; TreeNode ri原创 2021-11-16 23:53:33 · 435 阅读 · 0 评论 -
Java实现堆(最大堆,最小堆)
最大堆代码如下: package MaxHeap; import java.util.Scanner; public class Heap { private int data[]; private int size; private int capacity; private final int maxNum = 999999999; public Heap() { data = new int[10+1]; size原创 2021-11-16 23:52:32 · 1094 阅读 · 0 评论 -
Java实现BST搜索树
代码如下: package BSTree; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class BSTree { private class TreeNode { int data; TreeNode left; TreeNode right;原创 2021-11-16 23:49:55 · 361 阅读 · 0 评论 -
Java实现二叉树
二叉树: package Tree; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Stack; public class BinTree { private class TreeNode { int data; TreeNode left; TreeNode right;原创 2021-11-14 23:45:03 · 793 阅读 · 0 评论 -
Java实现队列(循环队列,链队列)
循环队列: package SeqQueue; public class Queue { private int data[]; private int queueSize; private int front,rear; public Queue() { data = new int[100]; queueSize = 100; front = rear = 0; } public Queue(i原创 2021-11-14 23:43:52 · 498 阅读 · 0 评论 -
Java实现栈(顺序栈,链栈)
顺序栈: package SeqStack; public class Stack { private int top; private int base[]; private int stackSize; public Stack() { stackSize = 100; base = new int[stackSize]; top = -1; } public Stack(int n)原创 2021-11-14 23:41:00 · 518 阅读 · 0 评论 -
Java实现线性表(顺序表,链表)
顺序表: package seqTable; import java.util.ArrayList; import java.util.Scanner; public class SeqList { private int data[]; private int len; private int maxSize; public SeqList() { data = new int[100]; maxSize = 100;原创 2021-11-14 23:39:27 · 803 阅读 · 0 评论 -
Java设计链表(不带头结点的单链表)
设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。 在链表类中实现这些功能: get(index):获取链表中第 index 个节点的值。如果索引无效,则返回-1。 addAtHead(val):在链表的第一个元素之前添加一个值为 val 的节点。插入后,新节点将成为链原创 2021-10-14 00:51:35 · 545 阅读 · 0 评论 -
Java 实例 - 队列(Queue)用法
队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。 LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。 以下实例演示了队列(Queue)的用法: import java.util.LinkedList; import java.util.Queue; public class Main { public static void main(String[] args) { //add()和remove原创 2021-10-13 00:33:17 · 355 阅读 · 0 评论 -
Java Stack 类
Java Stack 类 栈是Vector的一个子类,它实现了一个标准的后进先出的栈。 堆栈只定义了默认构造函数,用来创建一个空栈。 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法。 Stack() 除了由Vector定义的所有方法,自己也定义了一些方法: 序号 方法描述 1 boolean empty() 测试堆栈是否为空。 2 Object peek( ) 查看堆栈顶部的对象,但不从堆栈中移除它。 3 Object pop( ) 移除堆栈顶部的对象,并作为此函数的值返回该对象。原创 2021-10-13 00:44:12 · 209 阅读 · 0 评论