当前搜索:

[置顶] leetcode已完成题目索引

算法研究的重要性 2 leetcode leetcode是面试算法真题,囊括了常用算法思想和经典题目,是算法入门和提升的好材料。我每天都至少训练一个题目,锻炼自己的逻辑思维和写算法的严密性。 3 标签和题目 常用标签 已完成题目列表 ID Tags Solut...
阅读(11865) 评论(0)

717. One-bit and two-bits characters

记录下,LeetCode Contest 56 题1,包括题目意思,和解题思路。 这个题目上来读了好几遍才理解它的意思,理解意思后,这个题目就比较简单了。 不过为了提升算法效率,进一步做了一些优化,优化后 beat 100% submission,重点看下优化思路吧。 1 原...
阅读(4617) 评论(0)

「动态规划后篇」:适用场景

1 你会学到什么 2 核心问题 3 LCS 3-1 例子分析 4 LCS 代码实现 5 总结 1 你会学到什么?前三天的推送都是关于动态规划算法的,先通过一个《装水最多的容器》初步感受了动态规划是怎么一回事,相比于直观的枚举算法,它能使求解更快地收敛;之后,推送了求解有效括号对的最大数...
阅读(1843) 评论(0)

动态规划中篇:爬楼梯

1 你会学到什么 2 动态规划相关理论 3 动态规划好在哪里 4 爬楼梯 5 总结 1 你会学到什么?在前面的两个推送: LeetCode实战:动态规划算法是怎么一回事 动态规划:括号知多少 我们通过两个实际问题,《装水做多的容器》和《括号知多少》,初步对动态规划有了一个初步了解。...
阅读(4294) 评论(0)

动态规划:括号知多少

1 你会学到什么?在上一消息推送中,我们通过《装水最多的容器》这个实际问题,初步了解了动态规划的魅力所在,还记得如果我们枚举所有可能的容器高度和边长时得到算法时间复杂度很大,而经过仔细分析目标函数和其变量关系时,我们发现把初始值设置为最大底边长度乘以相
阅读(303) 评论(0)

LeetCode实战:动态规划算法是怎么一回事

1 回顾 2 你会学到什么 3 讨论的问题是什么 4 动态规划入门 5 解决问题的方法 5-1 问题分析 5-2 暴力枚举 5-3 动态规划 5-4 算法思路 5-5 源码实现 5-6 模拟gif 6 算法评价 7 总结 8 GitChat 9 公众号
阅读(1466) 评论(0)

常用排序算法代码兑现

回顾兑现代码 1 冒泡排序 2 快速排序 3 直接选择排序 4 堆排序 5 直接插入排序 6 希尔排序 7 归并排序 总结 欢迎关注算法channel公众号 回顾五天过去了,8个主要排序算法的思想和原理图解都已经推送完了,在这些推送中,我们详细分析讨论了 各种排序算法的时间、空间复杂度...
阅读(1367) 评论(0)

不基于比较的基数排序原理图解

借助桶编号(键)经过多次分配和采集,最终得到一个有序序列,基数排序算法独树一帜,不像之前总结的排序算法...
阅读(4782) 评论(0)

归并排序算法的过程图解

归并排序的时间复杂度,在最坏,最好和平均都是O(nlogn),这是效率,性能非常好的排序算法。 只不过它需要占用 O(n)的内存空间,如果数据量一旦很大,内存可能吃不消,这是它的弱点和致命伤。而其他排序算法,比如快速排序,希尔排序,都是就地排序算法,它们不占用额外的内存空间。
阅读(7331) 评论(0)

直接插入排序到希尔排序做的那些改进

彻底弄明白常用的排序算法的基本思想,算法的时间和空间复杂度,以及如何选择这些排序算法,确定要解决的问题的最佳排序算法,已经总结了冒泡排序和其改进后的快速排序算法,直接选择排序和堆排序算法,下面总结直接插入排序到希尔排序做的改进,后面再继续总结归并排序和基数排序。
阅读(1605) 评论(1)

直接选择排序到堆排序做的那些改进

1 你会学到什么 2 讨论的问题是什么 3 相关的概念和理论 4 直接选择排序 基本思想 升序排序的例子 算法评价 5 直接选择的优化版之堆排序 自学成才的计算机科学家 Flody 堆排序的基本概念 堆排序的算法思想 堆排序是如何工作的 应用堆排序得到升序排序的例子 算法评价 6 总结 ...
阅读(1344) 评论(0)

冒泡排序到快速排序做的那些优化

你会学到什么? 彻底弄明白常用的排序算法的基本思想,算法的时间和空间复杂度,以及如何选择这些排序算法,确定要解决的问题的最佳排序算法,我们先总结下冒泡排序和其改进后的快速排序这两个算法,后面再继续总结插入排序、希尔排序、选择排序、堆排序、归并排序和基数排序。 讨论的问题是什么? 各种排序算法...
阅读(1630) 评论(0)

二叉树非递归版的后序遍历算法

你会学到什么?树的递归遍历算法很容易理解,代码也很精简,但是如果想要从本质上理解二叉树常用的三种遍历方法,还得要思考树的非递归遍历算法。读完后的收获: 将学到二叉树的后序遍历的非递归版本 明白栈这种数据结构该怎么使用 讨论的问题是什么?主要讨论二叉树的非递归版后序遍历该如何实现,包括借助什么样的数...
阅读(7180) 评论(0)

图解二叉树非递归版的中序遍历算法

你会学到什么 讨论的问题是什么 这个问题相关的概念和理论 非递归版中序遍历算法 代码思考 算法技巧 实现代码 快照 评价算法 总结 欢迎关注算法思考与应用公众号 你会学到什么?树的递归遍历算法很容易理解,代码也很精简,但是如果想要从本质上理解二叉树常用的三种遍历方法,还得要思考树的非递归遍历算法。...
阅读(2881) 评论(0)

图解二叉树非递归版的前序遍历算法

“ 图解用栈数据结构对树的前序遍历,中序遍历,后续遍历。”
阅读(6885) 评论(0)

算法思想-深度搜索算法-leetcode相关题目总结

搜索算法 深度优先搜索 分析过程 实现代码 进出栈过程示意图 DFS算法应用-Leetcode相关题目 Leetcode 78 Subsets Leetcode 90 Subsets II Leetcode 47 Permutations II Leetcode 131 Palindro...
阅读(6617) 评论(0)

131. Palindrome Partitioning

深度优先搜索找字符串的子回文字符串
阅读(3851) 评论(0)

Leetcode 55. Jump Game

题目 Given an array of non-negative integers, you are initially positioned at the first index of the array. Each element in the array represents your...
阅读(442) 评论(0)

658. Find K Closest Elements

Given a sorted array, two integers k and x, find the k closest elements to x in the array. The result should also be sorted in ascending order. If th...
阅读(583) 评论(0)

138. Copy List with Random Pointer

A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null.Return a deep copy...
阅读(3973) 评论(0)
    算法channel

    交流思想,注重分析,实例阐述,通俗易懂,包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来!

    算法与人工智能交流群:646901659

    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 33万+
    积分: 7782
    排名: 3390
    博客专栏