
春招准备
1号寝林某人
这个作者很懒,什么都没留下…
展开
-
堆排序(建堆+排序过程) java实现
堆排序(建堆+排序过程) java实现 建堆 从第一个非叶子结点开始向下交换(即每次调整都是从父节点、左孩子节点、右孩子节点三者中选择最大者跟父节点进行交换(交换之后可能造成被交换的孩子节点不满足堆的性质,因此每次交换之后要重新对被交换的孩子节点进行调整)。有了初始堆之后就可以进行排序了) 排序 排序过程为取出堆顶元素的操作,实现细节(取出堆顶元素与堆尾元素交换,将堆顶元素向下调整堆———在每一个调整过程中当不向下调整时即为调整结束)。取出的顺序为先第一个非叶子结点,第二个非叶子结点…一直到堆顶。 参考链接原创 2021-03-17 21:08:17 · 511 阅读 · 0 评论 -
dijkstra求单源最短路径(java)
dijkstra算法:求单源最短路径,算法内部设有 //记录路径; int[] path=new int[n]; //记录点是否被访问过; boolean[] visited=new boolean[n]; //记录开销; int[] cost=new int[n]; 等数组记录,针对下图: 具体代码如下: import java.util.Stack; public class ShortestPathDijkstra { public static void main(String[] a原创 2021-03-09 13:06:10 · 340 阅读 · 0 评论 -
Floyd-最短路径(java)
Floyd算法:用于多源最短路径的求解,算出来的是所有的节点到其余各节点之间的最短距离,其初始化了2个矩阵分别为 matrix(图的邻接举证) path(保存最短路径的矩阵) 如图: import java.util.Stack; public class ShortestPathFloyd { int n; int[][] matrix; int[][] path; int[][] path2; int MAX_DISTANCE=Integer.MAX_VA原创 2021-03-08 22:40:07 · 363 阅读 · 0 评论 -
java Scanner 输入输出总结
java 输入输出总结 println System.out.println源码: /** * Prints a String and then terminate the line. This method behaves as * though it invokes {@link #print(String)} and then * {@link #println()}. * * @param x The {@code String} to be p原创 2021-03-08 17:19:16 · 890 阅读 · 0 评论 -
刷题笔记
刷题笔记 java 运算符优先级&& ,|| 优先级(&&)>优先级(||),&&运算优先于|| java String trim() trim():删除首位空格,会生成新的字符,会占用O(n)的空间复杂度 java List to int[] ans.stream().mapToInt(Integer::valueOf).toArray(); java char[] to String public static void main(Stri原创 2021-03-08 12:49:59 · 147 阅读 · 0 评论 -
一些代码模版
代码模版 二叉搜索树转双向链表 利用非递归的中序遍历 public Node treeToDoublyList(Node root) { if(root==null)return root; Stack<Node> sta=new Stack<>(); Node cur=root; Node pre=null; Node head=null; while(cur!=null||!sta.i原创 2021-03-08 12:47:16 · 175 阅读 · 0 评论