![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法蔡勾
Hheart-beast
这个作者很懒,什么都没留下…
展开
-
Java进行堆排序
堆的基本概念堆就是由完全二叉树构成的,而完全二叉树又包括满二叉树或者从左往右依次填充叶结点的树,即要么没有叶节点,如果只有一个叶节点必然是左叶结点。堆结点的关系父节点下标为i,则左孩子的坐标为2i+1,右孩子的坐标为2i+2.注下标从0开始堆排序的步骤第一步:根据给出的数据建立堆,本题是升序排列,所以建立大根堆(如果降序排列则建立小根堆,至于为何,看完剩下的步骤就知道了) public static void heapInsert(int[]arr,int index){原创 2021-05-28 17:33:09 · 223 阅读 · 0 评论 -
蛇形打印矩阵
用双指针的方法蛇形打印矩阵示意图:所以蛇形打印的顺序可以看作两个指针的同时移动,每次需要打印的内容就是两个只针对角线上所对应的内容,每移动一次打印的方向就改变一次,直到任意一个起点移动到最后一个顶点的位置。package chap1;/** * @author your_tt * @date 2021年05月25日16:19 */public class Serpentine_matrix { public static void serpentine(int[][] mat原创 2021-05-25 16:23:33 · 517 阅读 · 0 评论 -
不用辅助数组实现矩阵顺时针旋转90°
You are given an n x n 2D matrix representing an image. Rotate theimage by 90 degrees (clockwise). Follow up: Could you do thisin-place?解题思路:本题要求我们对矩阵进行90°旋转.1.求出矩阵的左上角坐标以及右下角坐标,然后我们对矩阵的顶点进行旋转,旋转后在对矩阵最外圈的其他元素进行旋转2.遍历完最外圈后再依次对矩阵的内圈进行旋转3.必定是方阵,否则旋转.原创 2021-05-23 14:32:08 · 406 阅读 · 0 评论