
数据结构
文章平均质量分 50
passionup
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
字符串-通过删除字母匹配到字典里最长单词-双指针/动态规划
通过删除字母匹配到字典里最长单词 leetcode 524 给你一个字符串 s 和一个字符串数组 dictionary 作为字典,找出并返回字典中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 如果答案不止一个,返回长度最长且字典序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入:s = "abpcplea", dictionary = ["ale","apple","monkey","plea"] 输出:"apple" 示例 2: 输入:s = "abpcplea", dic原创 2021-09-15 11:07:48 · 145 阅读 · 0 评论 -
数学-寻找峰值 leetcode 162
寻找峰值 来源于力扣(LeetCode) 峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。 你可以假设 nums[-1] = nums[n] = -∞ 。 你必须实现时间复杂度为 O(log n) 的算法来解决此问题。 示例1 输入:nums = [1,2,3,1] 输出:2 解释:3 是峰值元素,你的函数应该返回其索引 2。 示例2 输入:nums = [1,2,1,3,5,6,4]原创 2021-09-15 09:31:57 · 187 阅读 · 0 评论 -
栈-有效的括号字符串-栈\贪心算法
有效的括号字符串 来源于leetcode 给定一个只包含三种字符的字符串:( ,) 和 *,写一个函数来检验这个字符串是否为有效字符串。有效字符串具有如下规则: 任何左括号 ( 必须有相应的右括号 )。 任何右括号 ) 必须有相应的左括号 ( 。 左括号 ( 必须在对应的右括号之前 )。 可以被视为单个右括号 ) ,或单个左括号 ( ,或一个空字符串。 一个空字符串也被视为有效字符串。 示例 1: 输入: "()" 输出: True 示例 2: 输入: "(*)" 输出: True 示例 3: 输入原创 2021-09-13 21:56:04 · 233 阅读 · 0 评论 -
栈-最小栈
最小栈 leetcode 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) —— 将元素 x 推入栈中。 pop() —— 删除栈顶的元素。 top() —— 获取栈顶元素。 getMin() —— 检索栈中的最小元素。 示例: 输入: ["MinStack","push","push","push","getMin","pop","top","getMin"] [[],[-2],[0],[-3],[],[],[],[]] 输出: [null,nu原创 2021-09-13 09:38:24 · 155 阅读 · 0 评论 -
数学-整数中1出现的次数
这里写自定义目录标题整数中1出现的次数(从1到n整数中1出现的次数)描述 整数中1出现的次数(从1到n整数中1出现的次数) 描述 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数 例如,1~13中包含1的数字有1、10、11、12、13因此共出现6次 [O(n^2)解法] class Solution { public: int countDigitOne(int n) { int count = 0; for (int i = 1; i <=原创 2021-09-12 16:29:57 · 139 阅读 · 0 评论 -
dp-装箱问题
装箱问题 (来源于牛客网)一个工厂制造的产品形状都是长方体,它们的高度都是h,长和宽都相等,一共有六个型号,他们的长宽分别为1×1、2×2、3×3、4×4、5×5、6×6。这些产品通常使用一个 6×6×h 的长方体包裹包装然后邮寄给客户。因为邮费很贵,所以工厂要想方设法的减小每个订单运送时的包裹数量。他们很需要有一个好的程序帮他们解决这个问题从而节省费用。现在这个程序由你来设计。 输入描述: 输入包含多组数据。 每组数据一行,包含六个自然数,分别表示1×1至6×6这六种产品的数量。 输出描述: 对应每组原创 2021-09-11 20:47:39 · 248 阅读 · 0 评论 -
4.1是否同一棵二叉搜索树
1-建两棵树,判断是否相等 2-不建树,判断相等 3-建一棵树,再判断其他序列是否与该树一致原创 2020-04-16 12:24:37 · 205 阅读 · 0 评论 -
0-程序算法计时
1. c语言版本 #include<cstdio> #include<ctime> int main() { const int maxN=1e6; /*clock_t是clock()返回值类型*/ clock_t start,stop; /*记录时间,s*/ double duration; /*clock():捕捉运行到...原创 2020-04-13 21:28:10 · 214 阅读 · 0 评论 -
数据结构习题册
2020年学习数据结构中的习题思路学习整理原创 2020-04-13 21:21:44 · 329 阅读 · 0 评论 -
绪论
1、 绪论 数据的组织和问题的规模有关。 解决问题的方法效率跟空间的利用效率有关 解决问题的效率和算法的巧妙程度有关。 抽象数据类型(Abstract Data Type) 数据类型 数据对象集 数据集合相关联的操作集 抽象 :不依赖具体的实现 编译器写法: /* 将n(n>1)个整数存放到一维数组R中,设计一个算法,将R中的序列循环左移P(0<p<n)个位置 */...原创 2020-02-18 18:04:11 · 202 阅读 · 0 评论 -
堆排序
堆排序 先整理学的,有点乱 数据结构排序算法之堆排序演示 #include<iostream> using namespace std; void MaxHead(int *a,int size); void makeMaxHead(int *a,int size,int i); void swap(int &a,int &b); void prinfout(int ...原创 2019-10-16 16:10:06 · 162 阅读 · 0 评论