- 博客(4)
- 收藏
- 关注
原创 数据结构——链表
链表(Linked list) 1 相关概念 链表是一种常用的数据结构,它通过指针将一些列数据结点,连接成一个数据链。 优点: 动态数据结构:相对于数组,具有更好的动态性(非顺序存储); 内存利用率高:建立链表时无需预先知道数据总量大小,可随机的分配空间;链表大小可在程序运行时增加或减少; 易于插入和删除 缺点: 内存使用:数组只需要数据域空间,链表每个节点都包含指针域,其需要额外的内存空间; 遍历困难:链表随机访问的性能没有数组好,需要 O(n) 的时间复杂度; 链表数组性能对比: 常见的链表种
2021-09-20 23:42:31 299
原创 线程、线程同部
2.1 2.2 线程同步 2.2.1 互斥锁 作用:用于解决多线程抢占资源的问题 机制:一次只能一个线程拥有互斥锁,其他线程只有等待。 互斥锁是在抢锁失败的情况下主动放弃CPU,进入睡眠状态直到锁的状态改变时再唤醒,而操作系统负责线程调度,为了实现锁的状态发生改变时能唤醒阻塞的线程或者进程,需要把锁交给操作系统管理,所以互斥锁在加锁操作时涉及上下文的切换。 互斥锁实际的效率还是可以让人接受的,加锁的时间大概100ns左右,而实际上互斥锁的一种可能的实现是先自旋一段时间,当自旋的时间超过阀值之后再将线程投入.
2021-08-01 21:46:00 112
原创 C语言学习笔记
1. 指针 如果数组作为函数参数,数组形参会退化为指针 void printf_arry(int a[1]) // 相当于 void printf_arry(int a[100]) //相当于 void printf_arry(int *a) { // a,当作指针用,指针类型在32位系统下,长度为4个字节 n=sizeof(a)/sizeof(a[0]);//sizeof(a) 指针4字节 sizeof(a[0])整形4字节 } [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直
2021-07-11 14:56:05 367
原创 svn学习笔记
SVN学习笔记 基于HM的学习视频 1 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。 2 SVN 的一些概念 repository(源代码库):源代码统一存放的地方 Checkout(提取):当你手上没有源代码的时候,你需要从repos
2021-07-07 23:42:47 120
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人