- 博客(13)
- 收藏
- 关注
原创 leetocde 460 LFU缓存
那么剩下的就是删除操作了,由于我们实时维护了 minFreq,所以我们能够知道 freq_table 里目前最少使用频率的索引,同时因为我们保证了链表中从链表头到链表尾的插入时间是有序的,所以 freq_table[minFreq] 的链表中链表尾的节点即为使用频率最小且插入时间最早的节点,我们删除它同时根据情况更新 minFreq ,整个时间复杂度均为 O(1)O(1)O(1)。如果没有的话,相当于是新加入的缓存,如果缓存已经到达容量,需要先删除最近最少使用的缓存,使用计数最小的键是最久未使用的键。
2025-04-01 19:36:31
606
原创 leetcode 80 删除有序数组中的重复项 II
解释:函数应返回新长度 length = 7, 并且原数组的前七个元素被修改为 0, 0, 1, 1, 2, 3, 3。解释:函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3。输入:nums = [0,0,1,1,1,1,2,3,3]输出:7, nums = [0,0,1,1,2,3,3]输出:5, nums = [1,1,2,2,3]// 在函数里修改输入数组对于调用者是可见的。输入:nums = [1,1,1,2,2,3]
2025-03-31 12:15:51
126
原创 leetcode 26 删除有序数组中的重复项I
给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2。输入:nums = [0,0,1,1,1,2,2,3,3,4]
2025-03-31 12:14:03
200
原创 leetcode 146 LRU 缓存
为了解决移到末尾这个问题,需要使用双向链表来记录,结构大概如下: https://leetcode.cn/problems/lru-cache/solutions/7583/shu-ju-jie-gou-fen-xi-python-ha-xi-shuang-xiang-li/对于链表,遇到上面的情况,也可以在常数的时间内找到对应的节点,但是如果想将它移到队尾则需要从头遍历到该节点才能保证链表不断,对于这种情况需要的时间复杂度也是O(n)// 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}
2025-03-31 12:05:52
1067
原创 leetcode 2278. 字母在字符串中的百分比
给你一个字符串 s 和一个字符 letter ,返回在 s 中等于 letter 字符所占的 百分比 ,向下取整到最接近的百分比。等于字母 'o' 的字符在 s 中占到的百分比是 2 / 6 * 100% = 33% ,向下取整,所以返回 33。等于字母 'k' 的字符在 s 中占到的百分比是 0% ,所以返回 0。输入:s = "foobar", letter = "o"输入:s = "jjjj", letter = "k"
2025-03-31 12:01:55
205
原创 leetcode 169 多数元素-摩尔投票法(超简单)
给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。摩尔投票法是一种用于寻找数组中'多数元素'(出现次数超过n/2的线性时间O(n)+常数空间O(1)算法)1. 多数元素的出现次数 > (N/2), 即它的个数比其他所有元素的总和还多。如果当前元素等于 candicate 则 count+1 表示投票。2. 如果让不同的元素相互抵消,那么最终剩下的就是多数元素。输入:nums = [2,2,1,1,1,2,2]
2025-03-16 17:46:48
227
原创 使用VS code 远程连接ssh主机报错:XHR faild(wget download failed)
使用VS code 远程连接ssh主机报错:XHR faild(wget download failed)
2023-01-20 16:23:29
2905
3
原创 Screen 相关命令
Screen 相关命令Screen -ls / screen -list 显示screen 进程Screen -S yourname 新建一个叫做yourname的sessionScreen -ls 列出当前所有的sessionScreen -r youname 回到yourname这个sessionScreen -d yourname 远程detach某个sessionScreen -d -r youname 结束当前session并回到yourname 这个session..
2022-05-18 14:59:34
3102
原创 pandas 某dataframe中的某两列中的数是否在另外一个dataframe中出现过(多列是否在别的dataframe中出现过)
pandas 某dataframe中的某两列中的数是否在另外一个dataframe中出现过(多列是否在别的dataframe中出现过)
2022-05-15 16:23:35
1288
1
原创 jupyter notebook 安装炫酷的主题界面
1. pip install jupyterthemes2. 安装完成后,如下命令查看主题 jt -lAvailable Themes: chesterish grade3 gruvboxd gruvboxl monokai(常用的黑红色主题) oceans16 onedork solarizedd solarizedl别的主题大家自行尝试...
2021-04-28 16:39:08
242
原创 jupyter notebook 安装主题后工具栏消失问题解决
jupyter notebook 安装主题后发现工具栏消失了这种时候安装主题的时候需要带上-T参数比如说 jupyter -t monokai -T启动jupyter notebook 就可以看到工具栏已经出现啦可选择后台启动 nohup jupyter notebook --allow-root&如果还是没有的话,点击View--> Toggle Header ->Toggle Toolbar 就可以显示工具栏啦...
2021-04-28 16:38:32
4973
2
原创 conda 配置虚拟环境
conda 配置虚拟环境配置虚拟环境就可以在自己的环境下装一些东西,这样大家用一台机器,不会相互影响1.conda create -n wjl python=3.72.conda info —enes Conda info -e 就可以看到刚才自己创建的那个虚拟环境了3.激活自己的虚拟环境 source activate wjl Conda activate wjl 不激活 conda deactivate ...
2021-04-28 14:38:49
700
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人