- 博客(33)
- 收藏
- 关注
原创 【LinuxC编程】05 - 信号
【黑马程序员-Linux系统编程】https://www.bilibili.com/video/BV1KE411q7ee?
2024-11-03 20:33:04 345
原创 进程间通信小练习
父进程执行文件拷贝操作。如果接收到SIGUSR1信号,将打印出当前拷贝进度。子进程每隔一个固定时间向父进程发生SIGUSR1信号。info] 编写程序。
2024-11-03 20:24:18 36
原创 Windows 下基于 CLion 配置 Linux 项目开发环境
【Windows 下基于 CLion 配置 Linux 项目开发环境 【C/C++/Linux】】
2024-11-02 15:51:05 105
原创 【LinuxC编程】04 - 进程间通信
Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相互访问,要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,InterProcess Communication)。在进程间完成数据传递需要借助操作系统提供特殊的方法,如:文件、管道、信号、共享内存、消息队列、套接字、命名管道等。随着计算机的蓬勃发展,一些方
2024-10-31 13:25:47 263
原创 【acwing算法基础课笔记】02 - 数据结构 - Hash & 常用STL
概念,也被称为散列表,是一种通过哈希函数将键(Key)映射到表中一个位置以便快速访问记录的数据结构。hash函数假设hash函数是 x mod 3,那么h(11) = 2, 11放到下标为2的位置。note] 待证mod后的值一半取成一个质数,并且这个指数要离2的整次幂尽可能的远,使冲突概率最小hash表长度要小于值域,可能发生冲突,解决冲突方法有拉链法和开放寻址法。
2024-10-27 19:14:48 636
原创 【acwing算法基础课笔记】02 - 数据结构 - KMP&前缀匹配
在《算法导论》中,BF算法(Brute Force,暴力匹配算法)是一种基本的字符串匹配算法,其核心思想是逐个比较模式串中的字符与主串中相应位置的字符,直到找到匹配的子串或遍历完整个主串。
2024-10-23 12:25:54 172
原创 【acwing算法基础课笔记】01-数据结构-单调栈&滑动窗口
每个数返回左边最近的比他小的数,没有就返回-1对i之前的数建立一个栈栈中存在这样的关系,下标为x和y的元素xyax>=ay时,ax不可能被y之后的元素选择,故可以弹出栈,栈形成一个单调增的序列单调栈拿数组模拟容器的好处使用STL编译器 O_2 O_3 优化之后,相差无几。但比赛方一半不会启用,保险起见用数组。
2024-10-22 11:35:55 422
原创 【acwing算法基础课笔记】01-基础算法-习题课
入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1) 和 (x2,y2) 表示一个子矩阵的左上角坐标和右下角坐标。输入一个 n 行 m 列的整数矩阵,再输入 q 个询问,每个询问包含四个整数 x1,y1,x2,y2,表示一个子矩阵的左上角坐标和右下角坐标。接下来 q 行,每行包含 5 个整数 x1,y1,x2,y2,c, 表示一个操作。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。
2024-10-21 15:54:26 904
原创 【acwing】788 求逆序对的数量 - 归并排序 - 简单
在每次合并之前,先计算逆序对数,左右两组数此时皆是从小到大的顺序排列。若左边第一个数大于右边第一个数,则左边剩下的数皆可和右边第一个数形成逆序对;此时继续看右边第二个数,比较左边第一个数和右边第二个数,以此类推。若左边第一个数小于右边第一个数,则比较左边第二个数和右边第一个数,如上述同样方式类推。逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满足。给定一个长度为 n 的整数数列,请你计算数列中的逆序对的数量。第一行包含整数 n,表示数列的长度。输出一个整数,表示逆序对的个数。
2024-10-19 21:38:40 113
原创 【acwing】786. 求第k个数 - 快速选择 - 简单
由于二分后的区间可以确定一半是大于x,一半小于x。所以k与x比较可以直接排除一半元素,每次递归只用递归区间的一半元素。给定一个长度为 n 的整数数列,以及一个整数 k,请用快速选择算法求出数列从小到大排序后的第 k 个数。第二行包含 n 个整数(所有整数均在1~范围内),表示整个数列。算法:快速排序 ( Quick Sort )输出一个整数,表示数列的第 k 小数。时间复杂度:O(nlog(n))第一行包含整数 n 和 k。时间复杂度:O(n)
2024-10-17 20:34:44 160
原创 【LinuxC编程】03-进程
MMU是一种硬件设备,也称为内存管理单元,它位于计算机系统的中央处理器(CPU)和内存之间。MMU负责处理程序发出的内存访问请求,并将逻辑地址转换为物理地址,实现对内存的管理和保护。虚拟内存能够创建一个连续的更大的空间给进程使用,出现的原因是由于主存的空间是有限。当运行多个进程或者一个进程需要更大的空间进行存储运行,主存显然是不够的,这个时候就需要更大更便宜的磁盘进行保存一部分数据。对于进程来说,虚拟内存就是一张连续的内存空间,这个空间有些在主存中,有些在磁盘中。
2024-10-16 19:32:49 566
原创 【acwing算法基础课笔记】01-基础算法-前缀和&差分
S是原数组(假设他是b的前缀和数组),则对S的某段区间的操作O(N)可以转为对其映射的b前缀和数组操作O(1),可以多次操作O(1)后转为原数组。要使 a【x1,y1】 ~ a【x2,y2】间的面积元素操作,可以直接对其映射的差分数组b操作。从 1开始 a的数列,S0 可以代表为空的集合而避免边界问题,例如求。图为b的矩阵,阴影为对单个b+c所影响的a数组范围。作用 用O(1)的时间给原数组(差分数组)加上值。只需要利用她两的差,不用逐个遍历。Sl 包含 a1 ~ al 的信息。这段进行+C操作,C为。
2024-10-12 19:15:32 605
原创 【acwing算法基础课笔记】01-基础算法-高精度加减乘除
高精度的高位开始 到低位,逐个除低精度,有余数 * 10给下一位处理。本质是 进制权重的消去,迭代%10算出更高位。【01-第一章-基础算法(二)53:00】小整数作为一个整体与大整数每位单独相乘。从高权重开始累减,减不整的给低权重处理。【01-基础算法(二)50:00】高精度 除 低精度 整数。
2024-10-12 19:11:04 159
原创 【acwing算法基础课笔记】01-基础算法-分治
如果先找大的再找小的,在找小的时候前面一定有一个已经找到的大的等待交换。找到小的就进入下一个循环,找不到就退出循环。也就是,退出循环的条件是存在一个小的没有匹配的大的ij都指向这个大的或者全部匹配后i正好多走1位和j相遇也是指向首个大的。为什么+1,为真可能不会改变检查范围,为假一定会消减一部分,所以。1、分界点 `q[1]、q[len/2]、q[r]随机。也就是说,+1靠近假,就+,不+靠近假,就不加。1、确定分界点 mid = (1+r)/2。2、递归排序 left、right。
2024-10-12 19:08:45 328
原创 but it set OpenCV_FOUND to FALSE so package “OpenCV“ is considered to be
VScode用cmake构建 opencv项目时报错。false改成 1 试试。到她所说的路径一看究竟。
2024-10-01 21:34:12 267
转载 Ubuntu24.04 新系统使用root用户SSH登录服务器
转载自 https://blog.csdn.net/weixin_44567080/article/details/139560887。转载自 https://m.yisu.com/ask/89757216.html。5、找到PasswordAuthentication no改成yes保存文件。1、用设置的ubuntu账号登录,创建一个root密码。6、重启ssh服务,使设置生效。3、需要重新启动 SSH 服务。2、检查22端口是否打开。3、编辑ssh配置文件。1、安装 ssh 服务。
2024-09-24 16:12:07 407
原创 Kruskal算法(破圈法)-生成树是最小生成树证明
环去掉一个边不影响连通性,只要去除环的最大权值的边就可以得到最小生成树,也就是选取环中除最大边外的边。少一个边不影响环原来的连通性,而算法总可以选择环中除权重最大边外的其他边,而环外的边算法总可以选中。生成树是一个去环过程。
2024-09-22 20:53:25 155
原创 KMP算法学习历程
核心还是真前缀的的算法,在失配处利用已经匹配的模式串位置信息直接跳转。文章中pi数组如果只对模式串求就是常规kmp中next数组。1、字符串前缀求法以及KMP变种。稍微变形下就是正常的KMP了。
2024-09-16 11:32:14 234
转载 VMware上的Ubuntu24.04启动时出现的错误
从内核的说明文档来看,这个 piix4 实际上是 Intel 82371AB 南桥芯片,多功能总线控制器,而在 VMware 里面并没有这个真实的芯片组,但在启动时最会尝试载入这个驱动模块,所以会报错,对系统安装没有任何影响,不影响安装,在意话关了电脑蓝牙就行。
2024-09-09 14:34:40 212
原创 QT-Creator 6 类名提示不正确【mac】
类名ui编辑界面改完之后也提示,还是显示默认的。项目用的cmake,编译器提示开启clangd,又搜到错误提示要开启clangd,照做之后好了。首选项 - C++ - Clangd - Use clangd。
2024-07-28 02:52:32 262
原创 回调函数的定义
回调基本上是指任何作为参数传递给其他代码的可执行代码, 它被期望在特定的时间被召唤或执行该代码。如果一个函数的引用被传递给另一个函数的参数进行调用,那么它就被称为回调函数。在C++、Python等更高级的语言中还可以使用“回调函数是一个作为“参数”被传递的函数。在C中必须用一个函数指针来调用回调函数。在C中,回调函数只能使用。
2024-05-27 16:13:40 277
原创 mac os14 brew安装consul报错 RuntimeError: Empty archive
``bush```解决方法```bush```
2023-12-04 16:47:14 543
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人