自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode 热题 HOT 100---- 2. 两数相加

等长部分逐一比对,不等长部分再相加进位,再处理尾节点。用carry来记录进位的值,如果要进位,最后处理进位。方法二:(官方题解)

2024-06-12 14:54:56 200

原创 LeetCode 热题 HOT 100----21. 合并两个有序链表

当然官方题解代码更简洁。

2024-06-12 11:14:20 155

原创 LeetCode 热题 HOT 100----141. 环形链表 II

思路:依旧利用set中元素的唯一性。思路:需要推出一个数学等式。

2024-06-04 18:33:59 208

原创 LeetCode 热题 HOT 100----141. 环形链表

LeetCode热题HOT100 环形链表

2024-06-01 22:16:46 207

原创 LeetCode 热题 HOT 100----461. 汉明距离

针对x和y分别设置一个数组来保存他们的二进制,再对这个二进制进行比较,但是我的代码样例没有完全通过。看了官方题解之后,才发现还有java异或运算符(知识匮乏了…不知道为啥没过全部的样例…

2023-08-26 21:24:08 148 1

原创 LeetCode 热题 HOT 100----169. 多数元素

看了题解的hashmap的方法,但是感觉太复杂。王xx跟我说了他这题的思想。太晚了,官方题解明早更…

2023-08-26 00:47:17 121

原创 OS第二章第四节死锁

2023-08-25 13:21:21 61

原创 LeetCode 热题 HOT 100----121. 买卖股票的最佳时机

是利用两个变量 minpoint 和 maxprofit 来记录历史股票最低点和历史利润最大值(不是全局,是遍历到该点的),用两个变量来限制住,这样就可以不用两个循环了,降低了时间复杂度,牛的一批!

2023-08-25 00:03:08 85

原创 LeetCode 热题 HOT 100----448. 找到所有数组中消失的数字

【代码】LeetCode 热题 HOT 100----448. 找到所有数组中消失的数字。

2023-08-24 22:53:53 60

原创 OS第二章王道练习题 2.3 同步与互斥

这里临界区是指访问临界资源A的那段代码,有5个并发进程,共有5个操作共享变量A的代码段。互斥关系:共享缓冲区的访问一定是互斥访问的。同步关系:进程A放完了B才能往缓冲区读数据。

2023-08-24 22:15:35 82

原创 LeetCode 热题 HOT 100----160. 相交链表

但是我有一个小问题:如果两个长度相等的链表,都在同样的位置数值相等,但是之后不相等,那么是否这个题目也会通过?如果没有相交部分,呢么最后pA=pB=null。总体思想:就是A走一遍链表A,再走一遍链表B。如果有相交部分,那么最后pA=pB。B走一遍链表B,再走一遍链表A。例如:1234和6739。

2023-08-22 00:57:17 63

原创 LeetCode 热题 HOT 100----70. 爬楼梯

但是f(x)=f(x−1)+f(x−2)滚动数组我是理解的,大一学过斐波那契数列。最后一步可能跨了一个台阶或者两个台阶。最后一步可以跨一步或者两步。

2023-08-20 23:53:31 87

原创 OS第二章王道练习题 2.2处理机调度

中断发生时,由硬件保护并更新程序计数器(PC),而不是由软件完成,主要是为了保证系统运行可靠、正确。------->该类作业执行期间需要频繁请求I/O操作,可能频繁放弃CPU,所以占用CPU时间不会太长,采用。----->该类作业需要占用很长的CPU时间,而很少请求I/O操作,采用。b. 运行的进程(线程)所需资源未准备好。c. 运行的进程(线程)的时间片用完。f. 被高优先级的进程(线程)抢占。a. 运行的进程(线程)运行完毕。d. 运行的进程(线程)自我阻塞。e. 运行的进程(线程)出现错误。

2023-08-20 22:53:00 40

原创 OS第二章第二节处理机调度

2023-08-20 13:14:48 69

原创 OS第二章王道练习题 2.1进程与线程

13.采用轮转调度法,进程中设置用户级线程和内核级线程的效果完全不同,(如果分别设置100个用户级线程和100个内核级线程,则前者的执行时间是后者的100倍,因为后者可以连上100台打印机直接打印,但是前者只能连一台打印机慢慢打印)16.一个进程的读磁盘操作完成后,操作系统针对该进程必做的是修改进程状态:阻塞态-----> 就绪态,(进程申请读磁盘,要等I/O操作完成,会把自身阻塞…,(在引入线程后,进程退化为资源分配的基本单位,而线程代替了进程被操作系统调度,因而线程可以并发执行)

2023-08-19 15:31:22 187

原创 OS第二章第一节

可以把管道通信的管道理解成为是一个先进先出的循环队列,只能先进先出,而共享内存就是随便放在共享空间的哪个空闲地方都可以。也不需要遵循先进先出的原则取数据。运行态——>阻塞态是一种进程自身做出的主动行为。

2023-08-19 01:06:51 24

原创 112. 路径总和

【代码】112. 路径总和。

2023-08-02 23:19:44 20

原创 617. 合并二叉树

【代码】617. 合并二叉树。

2023-08-01 22:22:36 28

原创 力扣 热题100—— 21.合并两个有序链表

力扣 热题100—— 21.合并两个有序链表

2023-04-19 21:29:43 55 1

原创 力扣 热题100—— 20. 有效的括号

力扣热题100 有效的括号

2023-04-15 21:01:39 52

原创 删除链表中的节点

请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 。题目数据保证需要删除的节点 不是末尾节点 。示例 1:输入:head = [4,5,1,9], node = 5输出:[4,1,9]解释:指定链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9/** * Definition for singly-linked list. * struct Lis

2022-01-15 15:56:42 240

原创 输出外观数列

给定一个正整数 n ,输出外观数列的第 n 项。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。你可以将其视作是由递归公式定义的数字字符串序列:countAndSay(1) = “1”countAndSay(n) 是对 countAndSay(n-1) 的描述,然后转换成另一个数字字符串。前五项如下:111211211111221第一项是数字 1描述前一项,这个数是 1 即 “ 一 个 1 ”,记作 “11”描述前一

2022-01-14 23:17:49 69

原创 实现 strStr()

实现 strStr() 函数。给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。说明:当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与 C 语言的 strstr() 以及 Java 的 indexOf() 定义相符。示例 1:输入:haystack = “hello

2022-01-14 20:24:51 135

原创 验证回文串

高精度计算给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: “A man, a plan, a canal: Panama”输出: true解释:“amanaplanacanalpanama” 是回文串提示:1 <= s.length <= 2 * 105字符串 s 由 ASCII 字符组成bool isPalindrome(char * s){ int x=0,k=0;

2022-01-13 22:42:14 268

原创 有效的字母异位词

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true提示:1 <= s.length, t.length <= 5 * 104s 和 t 仅包含小写字母bool isAnagram(char * s, char * t){ int x=0,y=0; //创建两个记录

2022-01-13 17:36:46 162

原创 字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2提示:你可以假定该字符串只包含小写字母。//一个数组实现自制哈希表int firstUniqChar(char * s){ //新建一个哈希表,用数组a记录字母出现的次数 int a[26]={0}; // for(int i=0;s[i]!=0;i++){ a[s[i]-'a']

2022-01-13 17:17:23 79

原创 每日基础算法—Day3—计算2的N次方

【每日一题】计算2的N次方【题目描述】任意给出一个正整数n,计算2的n次方的值。【输入】一个正整数n。【输出】2的n次方的值【样例输入】5【样例输出】32【思路】用两个for循环,外面的for循环用来控制2的多少次方,里面的for循环用来控制进位。【主程序】#include<iostream>int a[10000];using namespace std;int main(){ int n,i,j,x,len=1; cin>>n; a[1]

2021-03-11 21:40:18 1321 1

原创 每日基础算法—Day2—大整数减法

大整数减法【每日一题Day2】大整数减法【题目描述】求两个大的正整数相减的差。【输入】共两行,被减数a和被减数b(a>b),每个大整数不超过200位,不会有多余的前导0。【输出】所求的差【样例输入】876567【样例输出】8698【思路】倒序存储减法错位if(a[i]<b[i]){a[i]+=10;a[i++]--;}c[i]=a[i]-b[i];或者c[i]=a[i]-b[i];if(c[i]<0){c[i]+=10;c[i++]

2021-03-10 21:56:16 300

原创 每日基础算法—Day1—大整数加法

【每日一题之Day1】大整数加法【题目描述】求两个不超过200位的非负数整数的和。【输入】有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。【输出】一行,相加后的结果。结果不能有多余的前导0。【样例输入】131452111111【样例输出】242562【思路】倒序存储倒叙存储的原因1、要采用竖式加法,进位处理比较方便。2、竖式加法中数字从左到右是高位到低位,但是数组存储后相加采用竖式相加的话就要把数字也变成从左到右为高位到低位,所以要将数组中数字采用倒序存储。

2021-03-10 17:57:16 153

空空如也

空空如也

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

TA关注的人

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