![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
lzcge
这个作者很懒,什么都没留下…
展开
-
Java中的优先级队列PriorityQueue
深入理解Java PriorityQueue 总体介绍前面以Java ArrayDeque为例讲解了Stack和Queue,其实还有一种特殊的队列叫做PriorityQueue,即优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素)。这里牵涉到了大小关系,元素大小的评判可以通过元素...翻译 2019-04-08 23:22:55 · 127 阅读 · 0 评论 -
java中负整数转为二进制(补码表示)
今天刷题突然想到负数怎么转为二进制(补码)的问题 @Test public void toBinary(){ int a = -3; StringBuffer str = new StringBuffer(); for (int i = 0; i < 32; i++) { // 0x80000000 是一个首位为1,其余位数为0的整数 int t = (a...翻译 2019-04-05 23:01:50 · 2320 阅读 · 0 评论 -
LeetCode226翻转一颗二叉树
public TreeNode invertTree(TreeNode root){ if(root==null) return null; else{ TreeNode temp = root; temp = root.left; root.left = root.right; root.right = temp; return root; }}原创 2019-03-24 12:39:12 · 196 阅读 · 0 评论 -
leetCode110 平衡二叉树
判断一颗二叉树是否为平衡二叉树public boolean isBalanced(TreeNode root){ if(root==null) return true; else{ int m = depth(root.left); int n = depth(root.right); if(m-n>1 || n-m>1)...原创 2019-03-25 15:08:36 · 133 阅读 · 0 评论 -
leetCode222完全二叉树的节点数
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { publ...原创 2019-03-25 14:22:40 · 140 阅读 · 0 评论 -
求二叉树中的最大深度和最小深度Java
最大深度public int maxDepth(TreeNode root){ if(root==null) return 0; else{ int m = maxDepth(root.left); int n = maxDepth(root.right); return (m>n?m:n) +1; }}最小深度public int minDepth(TreeNo...原创 2019-03-21 16:15:07 · 1223 阅读 · 0 评论 -
更简单的非递归遍历二叉树
递归方式前序遍历public List<Integer> res = new ArrayList<Integer>();public List<Integer> postorderTraversal(TreeNode root) {//递归写法 if(root == null) return res; res.add(roo...原创 2019-03-19 20:56:30 · 132 阅读 · 0 评论 -
Prim算法java
import java.util.ArrayList;import java.util.List;import java.util.Scanner;public class Prim { public char[] vexs;//节点 public int vex_number;//节点数 public int edge_number;//边数 publ...原创 2018-11-17 20:56:21 · 723 阅读 · 0 评论 -
快速排序的两种java实现
/** * 快速排序(基于霍尔的快排) */ public int Partition(int a[],int low,int high){ int key = a[low]; int temp; int i = low;int j = high; while(i<j){ w...原创 2019-03-06 20:03:22 · 194 阅读 · 0 评论 -
二分查找
二分查找非递归 /** * 二分查找非递归 * @return */ public int BinarySearch(int [] array,int key){ int low = 0; int high = array.length-1; if(key<array[low] || key&g...原创 2019-03-17 09:36:42 · 101 阅读 · 0 评论