算法学习记录
文章平均质量分 71
Coder_小岁月
Down to Gehenna, or up to the Throne, he travels the fastest who travels alone.
无论是坠入炼狱还是登高王权,独自旅行的人往往走得最快。
展开
-
LeetCode算法学习-生成不含相邻零的二进制字符串(解题思路过程)
回溯法是一种通过逐步构建解来解决问题的方法。如果发现当前选择无法导致有效的解,就撤销上一步的选择,尝试其他选择。这种方法通常用于解决组合优化问题、约束满足问题等。原创 2024-10-29 09:56:04 · 691 阅读 · 0 评论 -
LeetCode算法学习-缺失的第一个正数(解题思路过程)
给你一个未排序的整数数组nums,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为O(n)并且只使用常数级别额外空间的解决方案。原创 2024-10-28 10:14:52 · 883 阅读 · 0 评论 -
LeetCode算法学习-二叉树中的最大路径和(解题思路过程)
这种方法确保了每个节点只被访问一次,因此时间复杂度为 O(n),其中 n 是树中节点的数量。空间复杂度取决于递归栈的深度,最坏情况下为 O(n)。我们先从一个简单的例子开始,然后再看一个稍微复杂一点的例子。被定义为一条节点序列,序列中每对相邻节点之间都存在一条边。最优路径是 15 -> 20 -> 7 ,路径和为 15 + 20 + 7 = 42。最优路径是 2 -> 1 -> 3 ,路径和为 2 + 1 + 3 = 6。节点,且不一定经过根节点。是路径中各节点值的总和。给你一个二叉树的根节点。原创 2024-10-26 08:00:00 · 628 阅读 · 0 评论 -
LeetCode算法学习-排列序列(解题思路过程)
给出集合,其所有元素共有n!种排列。按大小顺序列出所有排列情况,并一一标记,当n = 3给定n和k,返回第k个排列。原创 2024-10-25 14:57:53 · 259 阅读 · 0 评论 -
算法-排序:快速排序
编程里算法有很多,排序的算法也多种(冒泡算法、选择排序、插入排序、希尔排序、归并排序、快速排序、桶排序),各种排序也都有优缺点,特此分享出我的学习笔记,希望大家一起来学习探讨快速排序思想设置一个基准数,通过一趟排序以基准数为分界点将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进...原创 2020-02-09 15:29:01 · 173 阅读 · 0 评论 -
算法-排序:冒泡
编程里算法有很多,排序的算法也多种(冒泡算法、选择排序、插入排序、希尔排序、归并排序、快速排序、桶排序),各种排序也都有优缺点,特此分享出我的学习笔记,希望大家一起来学习探讨冒泡算法思想每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来,重复进行多次,直到没有相邻元素需要交换为止。JAVA代码示例package demo;/** * 冒泡排序:每次比...原创 2020-02-02 16:02:18 · 161 阅读 · 0 评论