Java中常用数据结构的实现函数
Java中常用的数据结构有数组、链表、栈、队列、堆、树、图等。下面将分别介绍这些数据结构的常用实现函数。
1. 数组
- 创建数组:int[] arr = new int[length];
- 获取数组长度:int length = arr.length;
- 访问数组元素:int element = arr[index];
- 修改数组元素:arr[index] = value;
- 数组遍历:for(int i=0; i<arr.length; i++) { ... }
2. 链表
- 创建链表:LinkedList<T> list = new LinkedList<>();
- 添加元素:list.add(element);
- 在指定位置插入元素:list.add(index, element);
- 删除指定位置元素:list.remove(index);
- 获取链表长度:int size = list.size();
- 链表遍历:for(T element : list) { ... }
3. 栈
- 创建栈:Stack<T> stack = new Stack<>();
- 元素入栈:stack.push(element);
- 查看栈顶元素:T topElement = stack.peek();
- 元素出栈:T poppedElement = stack.pop();
- 判断栈是否为空:boolean isEmpty = stack.isEmpty();
- 获取栈大小:int size = stack.size();
4. 队列
- 创建队列:Queue<T> queue = new LinkedList<>();
- 元素入队:queue.add(element);
- 查看队首元素:T frontElement = queue.peek();
- 元素出队:T dequeuedElement = queue.remove();
- 判断队列是否为空:boolean isEmpty = queue.isEmpty();
- 获取队列大小:int size = queue.size();
5. 堆
- 创建最小堆:PriorityQueue<T> minHeap = new PriorityQueue<>();
- 创建最大堆:PriorityQueue<T> maxHeap = new PriorityQueue<>(Collections.reverseOrder());
- 添加元素到堆:minHeap.offer(element);
- 获取堆顶元素:T topElement = minHeap.peek();
- 删除堆顶元素:T removedElement = minHeap.poll();
6. 树
- 创建二叉搜索树:BinarySearchTree<T> bst = new BinarySearchTree<>();
- 插入节点:bst.insert(value);
- 删除节点:bst.delete(value);
- 查找节点:Node<T> node = bst.search(value);
- 遍历树:bst.traverse();
7. 图
- 创建图:Graph graph = new Graph(numVertex);
- 添加边:graph.addEdge(vertex1, vertex2);
- 删除边:graph.removeEdge(vertex1, vertex2);
- 获取节点的邻居节点:List<Integer> neighbors = graph.getNeighbors(vertex);
- 深度优先搜索:graph.dfs(start);
- 广度优先搜索:graph.bfs(start);
以上只是常用数据结构的基本实现函数,实际使用中还可以根据需求对这些函数进行扩展和适应。此外,Java还提供了许多库函数和接口,如ArrayList、HashSet、HashMap等,可以更方便地操作数据结构。
