update dir

This commit is contained in:
ranwenjie
2021-08-02 15:21:47 +08:00
parent 10b17169b1
commit acecb36058
3 changed files with 39 additions and 39 deletions
+26 -24
View File
@@ -366,29 +366,6 @@ char *trim_number(char *source){
## 字符串原地压缩
题目描述:“abeeeeegaaaffa" 压缩为 "abe5ag3f2a",请编程实现。
这道题需要注意:
1. 单个字符不压缩
2. 注意考虑压缩后某个字符个数是多位数(超过10个)
3. 原地压缩最麻烦的地方就是数据移动
这是使用2个指针,一前一后,如果不相等,都往前移动一位;如果相等,后一位变为数字2,且移动后面的指针一位,任然相等则数字加1,不相等
```
char *compress(const char *src,char *dest){
}
```
上面的压缩算法可以看到,压缩算法的`效率`验证依赖`给定字符串的特性`,如果'aaaaaaaa....aaa' 这样特征的字符串,使用上面的压缩算法,压缩率接近100%,相反,可能会的0%的压缩率。
## 字符串中找出连续最长的数字串 ## 字符串中找出连续最长的数字串
@@ -456,7 +433,6 @@ int longest_continuious_number(const char *input,char *output){
``` ```
## 求最大连续递增数字串 ## 求最大连续递增数字串
如“ads3sl456789DF3456ld345AA”中的“456789”就是所求。这道题在上一道题目的基础上增加了数字要递增的条件。思路跟上面差不多,碰到不递增的数字就相当于第二个数字串了。 如“ads3sl456789DF3456ld345AA”中的“456789”就是所求。这道题在上一道题目的基础上增加了数字要递增的条件。思路跟上面差不多,碰到不递增的数字就相当于第二个数字串了。
@@ -520,6 +496,32 @@ char *substr_count(const char *src, const char *substr, int *count)
## 字符串原地压缩
题目描述:“abeeeeegaaaffa" 压缩为 "abe5ag3f2a",请编程实现。
这道题需要注意:
1. 单个字符不压缩
2. 注意考虑压缩后某个字符个数是多位数(超过10个)
3. 原地压缩最麻烦的地方就是数据移动
这是使用2个指针,一前一后,如果不相等,都往前移动一位;如果相等,后一位变为数字2,且移动后面的指针一位,任然相等则数字加1,不相等
```
char *compress(const char *src,char *dest){
}
```
上面的压缩算法可以看到,压缩算法的`效率`验证依赖`给定字符串的特性`,如果'aaaaaaaa....aaa' 这样特征的字符串,使用上面的压缩算法,压缩率接近100%,相反,可能会的0%的压缩率。
## 请编写能直接实现strstr()函数功能的代码。 ## 请编写能直接实现strstr()函数功能的代码。
> strstr(str1,str2) 判断str2是否是str1的子串。 > strstr(str1,str2) 判断str2是否是str1的子串。
+1 -1
View File
@@ -162,7 +162,7 @@ struct ListNode{
}; };
//函数的声明如下: //函数的声明如下:
void DeleteNode(ListNode* pListHead, ListNode* pToBeDeleted); void deleteNode(ListNode* pListHead, ListNode* pToBeDeleted);
``` ```
+9 -11
View File
@@ -1,11 +1,10 @@
#### 要求设计一个DNS的Cache结构,要求能够满足每秒5000以上的查询,满足IP数据的快速插入,查询的速度要快。 ## 要求设计一个DNS的Cache结构,要求能够满足每秒5000以上的查询,满足IP数据的快速插入,查询的速度要快。
## 设计一个系统处理词语搭配问题
#### 设计一个系统处理词语搭配问题
设计一个系统处理词语搭配问题,比如说 中国 和人民可以搭配, 设计一个系统处理词语搭配问题,比如说 中国 和人民可以搭配,
则中国人民 人民中国都有效。要求: 则中国人民 人民中国都有效。要求:
@@ -19,10 +18,10 @@
#### 任务调度 ## 任务调度
系统有很多任务,任务之间有依赖,比如B依赖于A,则A执行完后B才能执行 系统有很多任务,任务之间有依赖,比如B依赖于A,则A执行完后B才能执行
(1)不考虑系统并行性,设计一个函数(Task *Ptask,int Task_num)不考虑并行度,最快的方法完成所有任务。 (1)不考虑系统并行性,设计一个函数`(Task *Ptask,int Task_num)`不考虑并行度,最快的方法完成所有任务。
(2)考虑并行度,怎么设计 (2)考虑并行度,怎么设计
``` ```
@@ -41,14 +40,13 @@
``` ```
#### 设计一种内存管理算法 ## 设计一种内存管理算法
相关的问题: 相关的问题:
##### 请编写实现malloc()内存分配函数功能一样的代码 * 请编写实现malloc()内存分配函数功能一样的代码
* 用C语言实现函数memmove()函数
##### 用C语言实现函数memmove()函数
``` ```
void * memmove(void *dest, const void *src, size_t n) void * memmove(void *dest, const void *src, size_t n)
@@ -61,11 +59,11 @@ memmove()函数的功能是拷贝src所指的内存内容前n个字节到dest所
#### A向B发邮件,B收到后读取并发送收到,但是中间可能丢失了该邮件,怎么设计一种最节省的方法,来处理丢失问题。 ## A向B发邮件,B收到后读取并发送收到,但是中间可能丢失了该邮件,怎么设计一种最节省的方法,来处理丢失问题。
#### 设计一种算法求出算法复杂度 ## 设计一种算法求出算法复杂度