
算法笔记
刷leetcode算法,用于记录过程中遇到的问题和总结
半点灿烂
这个作者很懒,什么都没留下…
展开
-
算法:排序算法总结(持续更新)
排序算法总结前言一、插入排序一、选择排序 前言 最近在补自己的基础知识,发现很多知识看了后容易忘记,于是开始进行对一些知识进行总结,方便以后自己查看。 这里主要是对遇到过的排序算法进行归纳总结,同时比较各自的优缺点。 目前整理的排序算法如下: 1.插入排序 2.选择排序 一、插入排序 思想:将未进行排序的数据插入已经排序好的数据中。 java示例: import java.text.SimpleDateFormat; import java.util.Date; public class Inser原创 2020-11-18 23:30:00 · 171 阅读 · 1 评论 -
算法:如何判断一棵树是否是平衡二叉树
//判断一棵树是否是平衡二叉树 public class Main18 { public static void main(String[] args) { TreeNode tree = new TreeNode(1); tree.left = new TreeNode(2); tree.right = new TreeNode(3); tree.left.left = new TreeNode(4); tree.l原创 2020-11-06 17:31:03 · 469 阅读 · 0 评论 -
leetcode-数组33题:实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。
实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 题目解题思路JAVA代码实现 题目 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。 1,2,3 → 1,3,2 3,2,1 → 1,2,3 1,1,5 → 1,5,1 解题思路 (后面给出) JAVA代原创 2020-11-02 16:47:18 · 631 阅读 · 0 评论 -
Leetcode-链表24题:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表
给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 题目解题思路代码实现 题目 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 // An highlighted block 示例 1: 输入:head = [1,2,3,4] 输出:[2,1,4,3] 示例 2: 输入:head = [] 输出:[] 示例 3: 输入:head = [1] 输出:[1] 提示: 链表中节点的数目在范围 [0, 100] 内 0原创 2020-10-30 17:24:16 · 1335 阅读 · 0 评论