![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 76
Dian。
这个作者很懒,什么都没留下…
展开
-
算法 - 十大经典排序算法(动图演示)
[TOC] 算法 - 十大经典排序算法(动图演示) 在计算机科学与数学中,一个排序算法(英语:Sorting algorithm)是一种能将一串资料依照特定排序方式进行排列的一种算法。最常用到的排序方式是数值顺序以及字典顺序。排序算法也用在处理文字资料以及产生人类可读的输出结果。 基本上,排序算法的输出必须遵守下列两个原则: 输出结果为递增序列(递增是针对所需的排序顺序而言) 输出结果是原输入的一种排列或是重组 算法基本介绍 十种排序算法一般分为两大类: 比较类排序:通过比较来决定元素间的相对次原创 2021-07-15 21:29:05 · 2681 阅读 · 1 评论 -
leetcode - 二叉树的遍历的多种方式
前中后序遍历、层序遍历分别使用递归和迭代的方法进行实现原创 2021-07-05 19:09:50 · 193 阅读 · 0 评论 -
TopK问题
TopK问题 题目 从N个整数中,找出最大的前k个数 (k 小于 N) 示例 1: 输入: 4,5,1,6,2,7,3,8 找前3个最大的数 最大的3个数字:6,7,8 解题 思路一 :全排序 使用排序解决 时间复杂度:O(nlogn) 思路二: 二叉堆 新建一个小顶堆 扫描n个整数 先将遍历到的钱k个数放入堆中 从第k+1个数开始,如果大于堆顶元素,就是使用replace操作(删除堆顶元素,将第k+1个数添加到堆中) 扫描完毕后,堆中剩下的就是最大的前k个数 时间复杂度:nlogk原创 2021-07-04 18:04:17 · 96 阅读 · 0 评论 -
leetcode - 1.两数之和
leetcode - 1.两数之和 leetcode链接 题目 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。 示例原创 2021-07-02 20:07:46 · 111 阅读 · 0 评论 -
带你了解数据结构与算法。附leetcode练习题
数据结构基础知识 线性结构:线性表(数组、链表、队列、栈、哈希表) 树型结构:二叉树、AVL树、红黑树、B树、堆、Trie、哈夫曼树、并查集。 图形结构:邻接矩阵、邻接表。 leetcode中题目的思考与实现原创 2021-06-30 16:00:35 · 329 阅读 · 0 评论