自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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关注的人

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