发布

学习

学习
专栏成员
84
文章
7568
阅读量
13
订阅数
Linux软硬链接与动静态库
我们看到, 真正找到磁盘上文件的并不是文件名, 而是inode, 其实在linux中可以让多个文件名对应于同一个inode.
用户11317877
2025-02-19
910
Linux Ext系列文件系统(看这一篇就够了!)
硬盘是典型的"块"设备, 操作系统读取硬盘数据的时候, 其实是不会一个个扇区地读取, 这样效率太低, 而是一次性连续读取多个扇区, 即一次性取⼀个”块”(block)。
用户11317877
2025-02-17
680
Linux 之 详谈系统I/O文件及内核级缓冲区(看这一篇就够了)
打开文件的方式不仅仅是fopen, ifstream等流式, 语言层的方案, 其实系统才是打开文件最底层的方案. 不过, 在学习文件IO之前, 先要了解一下如何给函数传递标志位, 该方法在系统文件IO接口中会使用到:
用户11317877
2025-02-16
530
详谈 Linux进程控制(看这一篇就够了)
本文将系统介绍进程控制的基本要素,包括进程创建, 进程终止, 进程等待, 进程替换等方面。深入理解进程创建的相关知识, 帮助更好的构建知识架构!
用户11317877
2024-12-20
1280
进程地址空间
我们在学习C语言的时候想必大家对这张图并不陌生, 这里可以理解为每一个进程都认为自己是独占系统物理内存大小, 进程之间,彼此不知道, 不关心对方的存在, 从而实现一定程度隔离!那么操作系统是如何进行管理的呢? 先描述在组织。所谓的进程虚拟地址空间, 本质是一个内核数据结构(类似PCB)。
用户11317877
2024-12-20
970
Linux自动化构建-make/Makefile
查看状态, 我们可以看到以下三个时间。 文件 = 内容 + 属性 以下简称acm时间, a表示最近一次访问的时间, M表示内容最近被修改的时间, C表示最近一个属性被修改的时间。 例如 : cat proc.c就是访问文件(但是访问频繁影响效率, 现在的操作系统已经这一块已经发生了变化。) chmod o-r proc.c 就是改变属性 vim proc.c 就是修改内容
用户11317877
2024-12-20
810
Linux基础指令(汇总)
功能:对于目录,该命令列出该目录下的所有子目录与文件, 对于文件, 将列出文件名以及其他信息。
用户11317877
2024-11-26
2430
Linux中编译器-gcc/g++的使用
上面的过程对应的选项正好对应键盘左上角 Esc 按键, 方便我们进行记忆, 不过E S 大写, c小写
用户11317877
2024-11-15
1690
C++智能指针
异常虽然给了我们方便, 但是同时也会给我们带来问题, 为了解决上述问题, 就有了智能指针的概念, 通俗来说智能指针就是自动的进行资源的释放.
用户11317877
2024-11-15
600
C++11中lambda表达式与包装器
在C++98中,如果想要对一个数据集合中的元素进行排序,可以使用std::sort方法。
用户11317877
2024-10-31
780
算法专题十: 栈+BFS
很高兴迎来了一年一度的“程序员节”。这个节日的由来与数字“1024”息息相关,因为1024是2的10次方,正好与计算机科学中的二进制系统紧密相连。本篇文章我会把自己刷到的经典题目和解决题目的思路分享给大家.
用户11317877
2024-10-31
780
算法专题九: 哈希表与字符串
固定一个数, 找前面有没有target - x这个数, 使用哈希表, 每次查找之后把这个数丢入到哈希表中, 哈希表中存储这个数字的下标, 时间复杂度为O(N) , 空间复杂度也为O(N).
用户11317877
2024-10-22
970
算法专题八: 链表
3. 不要吝啬空间, 大胆定义变量 4. 快慢双指针, (判环, 找链表中环的入口, 找链表中倒数第n个节点)
用户11317877
2024-10-20
1250
算法专题七: 分治归并
算法思路: 本道题使用归并的思路进行排序, 先讲数组分为左右两个区间, 然后合并两个有序数组.
用户11317877
2024-10-18
790
C++11新特性 右值引用与新的类功能
在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为C++11之前的最新C++标准名称。不过由于C++03(TC1)主要是对C++98标准中的漏洞进行修复,语言的核心部分则没有改动,因此人们习惯性的把两个标准合并称为C++98/03标准。从C++0x到C++11,C++标准10年磨一剑,第二个真正意义上的标准珊珊来迟。相比于C++98/03,C++11则带来了数量可观的变化,其中包含了约140个新特性,以及对C++03标准中约600个缺陷的修正,这使得C++11更像是从C++98/03中孕育出的一种新语言。相比较而言,C++11能更好地用于系统开发和库开发、语法更加泛华和简单化、更加稳定和安全,不仅功能更强大,而且能提升程序员的开发效率,公司实际项目开发中也用得比较多,所以我们要作为一个重点去学习。C++11增加的语法特性非常篇幅非常多,我们这里没办法一 一讲解,所以本节主要讲解实际中比较实用的语法。
用户11317877
2024-10-16
1020
算法专题六: 模拟与分治快排
算法思路: 本题就是简单的模拟, 只需按照题目的思路遍历所有的字符, 如果为?则将其替换, 替换时寻找26个小写字母中符合要求的, 即前一个字符和后一个字符都不等于当前字符, 如果为第一个字符和最后一个字符就不需要判断.
用户11317877
2024-10-16
800
算法专题五: 位运算
这道题就用到了我们总结的那个第七个方法, 干掉最右侧的1, 知道全部为0位置, 记录并返回干掉次数即可.
用户11317877
2024-10-16
640
算法专题四: 前缀和
根据题意, 创建一个前缀和数组, dp[i] = dp[i -1] + arr[i], 再使用前缀和数组, 要求的区域ret = dp[r] - dp[l-1], 这里我们为什么要这样求dp[i]呢? 还要绕一大圈子, 直接相加不就行了 , 但是如果直接相加求还不如我们的暴力解法呢, 这里还要开辟空间, 但是我们使用dp[i]求解只需遍历一遍数组即可求出前缀和
用户11317877
2024-10-16
630
算法专题三: 二分查找
那么本道题朴素的二分查找就不适用了, 我们需要根据二段行将数组进行划分, 得到下图结论.
用户11317877
2024-10-16
700
算法专题二: 滑动窗口
首先暴力解法就是依次枚举出所有的子数组, 从第一个元素为左端点依次向后枚举, 枚举到长度大于target就停止枚举, 以第二个元素为左端点进行枚举, 这里我们可以进行优化.
用户11317877
2024-10-16
1150
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档