做题、编程、算法总结

C语言常用函数总结

种类 函数 说明 链接
排序
qsort 对基本数据类型或结构体类型的数组进行排序 http://www.cplusplus.com/reference/cstdlib/qsort/?kw=qsort
查找函数
bsearch 二分查找,查找前需进行排序
字符串
strtok 分割字符串:将输入字符串按照某个分隔符进行拆分,常用于IP、文件路径等字符串的处理。 https://cplusplus.com/reference/cstring/strtok/?kw=strtok
strcmp 字符串比较(按字典序)
strcpy 拷贝字符串,末尾会自动补'\0'
strncpy 拷贝指定长度的字符串,末尾不会自动补'\0'
strstr 从str的左侧开始查找子字符串首次出现的位置
strchr 从str的左侧开始查找字符首次出现的位置
strrchr 从str的右侧开始查找字符首次出现的位置
strcat 拼接字符串
isalnum / isdigit / isxdigit等等 用于测试和映射字符 https://www.runoob.com/cprogramming/c-standard-library-ctype-h.html
格式化函数
sscanf 从字符串格式化读取数据 https://www.cplusplus.com/reference/cstdio/sscanf/?kw=sscanf
sprintf 数据格式化输出到字符串,末尾会自动补'\0' https://www.cplusplus.com/reference/cstdio/sprintf/?kw=sprintf
snprintf 数据格式化输出到指定大小的字符串,最多(size-1)字节,末尾会自动补'\0',
字符串和整型转换
strtol 字符串转换成long型。避免使用atoi。
strtoll 字符串转换成long long型。
Uthash开源库
hash hash操作
list 链表操作可实现为:普通队列、优先队列
array 动态数组
string 动态字符串
stack
ringbuffer 循环缓冲区

经典编程书籍大全

https://github.com/jobbole/awesome-programming-books

https://www.iamshuaidi.com/

并查集

https://labuladong.gitbook.io/algo/mu-lu-ye-1/mu-lu-ye-3/unionfind-suan-fa-xiang-jie

单调栈

名字上就听的出来,单调栈中存放的数据应该是有序的,所以单调栈也分为单调递增栈和单调递减栈

  • 单调递增栈:单调递增栈就是从栈底到栈顶数据是从大到小
  • 单调递减栈:单调递减栈就是从栈底到栈顶数据是从小到大

思考,栈顶元素与哪个给定值做比较,来保证栈中的有序?主要解决问题查找附近的较大值或者较少值,如身高
https://blog.csdn.net/lucky52529/article/details/89155694

学习资料

labuladong算法小抄:https://labuladong.gitbook.io/algo/

posted @ 2021-08-28 07:56  zephyr~  阅读(81)  评论(0编辑  收藏  举报