自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 刷题日记(Day12)

优先级队列(小顶堆)经典问题。

2023-04-23 11:20:37 46

原创 刷题日记(Day 11)

回溯算法,有重复元素的非重复组合。

2023-04-22 20:22:06 47

原创 刷题记录(Day 10)

值得说明的是,上述的代码使用的是递归的方式,而使用递归会导致效率不高。恰巧这段代码又是尾递归的方式(尾递归就是程序分支的最后,也就是最后要返回的时候才出现递归),从编译的角度来讲,尾递归都可以用循环的方式去实现。给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。关于二叉搜索树,在本文下面有相关的介绍,只要是满足左子树节点小于根节点,右子树节点大于根节点的一颗二叉树就是二叉搜索树(BST)。最后要说的是,查找的效率决定于树的高度。

2023-04-13 12:13:41 49

原创 多线程编程:条件变量

可以让线程以无竞争方式等待特定条件发生,条件变量和互斥量mutex(也称互斥锁)一起使用,条件变量是由互斥量来保护的。条件变量的使用条件变量指针:pthread_cond_t * cond互斥量指针:pthread_mutex_t * mutexpthread_cond_wait()函数会等待条件变量cond变为真。而mutex函数就是保护条件变量的互斥量。也就是说,这个函数在使用时需要配合pthread_mutex_lock()一起使用。

2023-04-12 11:40:39 56

原创 刷题日记(Day 9)

LeetCode每日一题,

2023-04-12 11:02:10 28

原创 刷题日记(Day 8)

LeetCode每日一题,冷静、静心思考,没什么做不出来的题目。

2023-04-06 16:38:16 50

原创 刷题日记(Day7)

区间DP,

2023-04-02 23:23:01 58

原创 刷题日记(Day6)

字符串 s 按 字典序排列 需要满足:对于所有有效的 i,s[i] 在字母表中的位置总是与 s[i+1] 相同或在 s[i+1] 之前。给你一个整数 n,请返回长度为 n 、仅由元音 (a, e, i, o, u) 组成且按 字典序排列 的字符串数量。上来先思考了下dp和二叉树,感觉都不够直接,后来按照第一位分情况讨论,问题就可以转化成组合数学的问题。思路:当字符串以a为开头的时候,由这样几种情况。

2023-03-29 19:20:42 33

原创 刷题日记(Day5)

今天让人印象深刻的是一道二叉树的mid题。

2023-03-29 00:23:19 29

原创 刷题记录(Day4)

LeetCode每日一题,

2023-03-25 21:23:52 27

原创 刷题记录(Day3)

如果子数组 nums[l[i]], nums[l[i]+1], …, nums[r[i]] 可以 重新排列 形成 等差数列 ,answer[i] 的值就是 true;给你一个由 n 个整数组成的数组 nums,和两个由 m 个整数组成的数组 l 和 r,后两个数组表示 m 组范围查询,其中第 i 个查询对应范围 [l[i], r[i]]。解题思路1:直接暴力模拟,题目怎么描述程序就怎么模拟,先复制全部数组或者一个子数组,然后根据区间去排序,之后对子数组里的有序的数列遍历模拟。下面是常规顺序刷题,

2023-03-23 22:34:56 24

原创 C++函数重载

【代码】C++函数重载。

2023-03-23 14:04:31 31

原创 刷题记录(DAY2)

dp经典题目,遵循着自底向上的dp逻辑,设计dp数组表示到该节点为止的最长递增序列长度(以该节点为结尾的最长序列长度)。每次计算一个新的长度dp[i]时,找一下该节点可以和哪些前置节点j组成递增子序列,该节点的最长子序列长度就是max(dp[i], dp[j]+1)。针对这个问题,思路应该是先按照得分降序排序,然后用遍历,用动态规划方程计算最大得分的队伍。动态规划(简称DP),通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。收获:复习了动态规划,复习了快速排序的写法。

2023-03-22 22:56:42 29

原创 数据结构与算法-刷题记录-Day1

如果遇到next[i]不等于next[j],那么匹配失败,前缀串(模板串)的末位j须参照已经记录的next前缀表回退 j = next[j-1],然后继续匹配,匹配成功则意味着next[i] = j。匹配流程与前缀表构建基本一致,两个指针分别指向模板串和匹配串,顺序匹配,遇到匹配失败的字符模板串指针根据next指引回退,直至匹配成功或者失败。两个指针同时移动,匹配前缀和后缀(这里实际上把前缀串作为匹配串,后缀串作为模板串)那么 0,1,0,1,2,0就是前缀表(next数组)aab的最长相等前后缀=0。

2023-03-20 17:44:50 46

原创 leetccode栈与队列

1. 用两个栈实现队列(剑指offer09)难度:简单题目:用两个栈实现一个队列。实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )例如:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],[]]输出:[null,null,3,-1]思路:用两个栈实现队列,栈是先进后出,

2022-02-25 11:09:23 84

原创 机器学习 - 汇总索引

机器学习 - 统计学习方法机器学习 - 神经网络与深度学习

2021-09-21 13:50:14 75

原创 近期要回顾的内容

数据结构(C++&Python)Trie树:https://blog.csdn.net/WZ_1447731440/article/details/120324091线性代数概率论、数理统计

2021-09-21 13:45:41 77

转载 Python 数据结构复习-2021-09-16

Python Trie 前缀树(字典树)前缀树(字典树)是一种树形的数据结构,用于高效地存储和检索字符串数据集中的键。前缀树可以用 O(|S|) 的时间复杂度完成如下操作,其中 |S|是插入字符串或查询前缀的长度。向前缀树中插入一个字符串word查询某前缀字符串是否为已插入到前缀树中的任意一个字符串的前缀Trie的构造Trie是一颗有根树,每个节点包含以下字段指向子节点的指针数组children布尔字段isEnd,表示该节点是否为字符串的结尾插入字符串从字典树的根开始插入,对当前字

2021-09-16 11:44:25 128

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除