春招准备
1号寝林某人
这个作者很懒,什么都没留下…
展开
-
堆排序(建堆+排序过程) java实现
堆排序(建堆+排序过程) java实现建堆从第一个非叶子结点开始向下交换(即每次调整都是从父节点、左孩子节点、右孩子节点三者中选择最大者跟父节点进行交换(交换之后可能造成被交换的孩子节点不满足堆的性质,因此每次交换之后要重新对被交换的孩子节点进行调整)。有了初始堆之后就可以进行排序了)排序排序过程为取出堆顶元素的操作,实现细节(取出堆顶元素与堆尾元素交换,将堆顶元素向下调整堆———在每一个调整过程中当不向下调整时即为调整结束)。取出的顺序为先第一个非叶子结点,第二个非叶子结点…一直到堆顶。参考链接原创 2021-03-17 21:08:17 · 462 阅读 · 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 · 304 阅读 · 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 · 313 阅读 · 0 评论 -
java Scanner 输入输出总结
java 输入输出总结printlnSystem.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 · 840 阅读 · 0 评论 -
刷题笔记
刷题笔记java 运算符优先级&& ,||优先级(&&)>优先级(||),&&运算优先于||java String trim()trim():删除首位空格,会生成新的字符,会占用O(n)的空间复杂度java List to int[]ans.stream().mapToInt(Integer::valueOf).toArray();java char[] to Stringpublic static void main(Stri原创 2021-03-08 12:49:59 · 115 阅读 · 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 · 139 阅读 · 0 评论