- 博客(7)
- 收藏
- 关注
原创 写时拷贝技术概述
写时拷贝技术 简单的来说就是就像银行的主卡和副卡,副卡可当做除了和主卡的联系外是没有任何信息的,当你用钱时即要改变余额数量时 ,银行系统把主卡的信息拷贝一份到副卡。 在Linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,linux中引入了“写时复制“技术,也就是只有进程空间的各段的内容要发生变化时,才会将父进程的内容复制一份给子进程。...
2019-08-30 20:38:24
382
原创 库文件
库文件 什么是库 在我们写代码的的时候经常会用到很多头文件,其实并不是用那些头文件,而是告诉系统,我写的代码需要几个函数,而这几个函数存在一个文件里,我已经把文件名也就是头文件告诉系统了,系统会自动的去一个目录下寻找有没有这个文件。而这个目录就是我们说的库。你可以简单的把它看成一个仓库,因为它会提供给你一些可以直接拿来用的变量、函数或类。 库实际上就是一段编译好的二进制代码,供系统在链接时链接调用...
2019-08-30 20:23:55
410
原创 简单的冒泡排序
void bubblesort(int n, int *ar) { int i = 1; for (; i < n; i++) { int tag = 1; for (int j = 0; j < n-i; j++) { if (ar[j]>ar[j + 1]) { swap(ar[j], ar[j + 1]); tag = 0; } } if (tag ) { brea...
2019-04-04 16:06:35
1079
原创 简单的插入排序
void insertsort(int n, int * ar) { for (int i = 1; i < n; i++) { int tmp = ar[i]; int j = i - 1; if (ar[j]>ar[j + 1]) { **do { ar[j + 1] = ar[j]; j--; } while (j>=0 &&tm...
2019-04-04 15:49:14
141
原创 简单的选择排序
void slectsort(int n, int* ar) { int i = 0; for (; i < n-1; i++) { int k = i; for (int j = i + 1; j < n; j++) { if (ar[j]<ar[k]) { k = j; } } swap(ar[i] , ar[k]); } } int main() { int ar[20] ...
2019-04-02 18:16:43
105
原创 简单的快速排序
#include<stdio.h> int parition(int*ar,left,right) { int i=left; int j=right; int tmp=ar[i]; while(i<j) { while(i<j && tmp<=ar[j]) //这里加上等于号可防止待排序列中有相同数值时出现死循环 { j-- ; } if(i&l...
2019-04-02 17:46:49
115
原创 Linux Fork函数浅说。
** Linux Fork函数浅说。** Fork函数调用一次,返回两次。 fork函数会创建一个子进程,fork之前的进程为父进程,所以fork函数结束后会有两个进程。 fork函数在父进程中返回子进程的Pid(非0值),子进程的返回值为0. fork后 父子进程共享数据,无论当父进程还是子进程需要修改数据时,系统会以页为单位将要修改的数据所在的页拷贝出来给另一个进程。 系统一般会让子进程优...
2019-03-08 18:09:37
356
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人