- 博客(8)
- 收藏
- 关注
原创 并发,线程和进程
并发:两个或者更多的任务(独立的活动)同时发生(进行);就好像车道一样,一条马路有多条车道,并行着车辆(前后跟随的并不算并行)进程:进程是表示资源分配的基本单位,又是调度运行的基本单位。当一个可执行程序被运行了的时候那就创建了一个进程线程:每个进程都有一个主线程(线程是进程中执行运算的最小单位),并且这个主线程是唯一的,也就是一个进程中只能有一个主线程。只要进程存在那么主线程也就会相应诞生(也可以手动编写其他子线程)。线程是用来执行代码的。就好像一列火车,进程是这辆火车,而线程为每节车厢。...
2020-09-11 16:50:22 96
原创 c++中一些常用排序算法的实现
冒泡排序#include<iostream>using namespace std;int main() { int n; cin >> n; int* p = new int[n]; int t; for (int i = 0; i < n; ++i) { cin >> p[i]; } for (int i = 0; i < n; ++i) { for (int j
2020-09-01 19:54:30 161
原创 c语言中约瑟夫环问题的实现
什么是约瑟夫问题?约瑟夫问题是一个有名的问题,编号为1-N的N个人安顺时针围坐一圈,选取M为报数的上限,从第一个人按顺时针开始报数,将第M个人出列,,下一个人继续从1开始报数,报到M的人再出列,直至所有的人全部出列为止。数组方法实现#include <iostream>using namespace std;//n是有几个人,m为有删除间隔,s为开始下标int Joseph(int n, int m, int s){ if (n < m || n <=
2020-08-30 15:28:19 565
原创 指针函数,函数指针与回调函数
指针函数指针函数是函数,是返回值为指针类型的函数1 int func1(); // 声明一个函数,返回值为int类型2 int *func2(); // 声明一个函数,返回值为int类型指针,指向一个int的地址例如int *fun(){ int *p = new int; return p;}函数指针它是指针,指向函数的指针。如果在程序中定义了一个函数,那么在编译时系统就会为这个函数代码分配一段存储空间,这段存储空间的首地址称为这个函数的地址。而且函数名表示的就是这
2020-08-28 19:17:10 130
原创 深拷贝和浅拷贝
深拷贝和浅拷贝一、什么是深拷贝和浅拷贝?二、浅拷贝所带来的问题和深拷贝总结一、什么是深拷贝和浅拷贝?浅拷贝:简单的赋值拷贝操作深拷贝:在堆区重新申请空间,进行拷贝操作二、浅拷贝所带来的问题和深拷贝一、 浅拷贝带来的问题(1)如果类中叧包含简单数据成员,没有指向堆区的指针, 可以使用编译器提供的默认拷贝构造函数(2)如果类中包含指向堆中数据的指针,浅复制将出现 严重问题(因为浅拷贝将指针所指向的堆区的地址也一并拷贝了,当运行析构函数的时候,本体和复制体的析构函数都会去释放同一块堆区内存,对..
2020-08-24 18:03:10 584
原创 c++中的引用操作
1 引用的基本使用作用:给变量取个别名用法:type &别名 = 原名使用引用之后别名和原名都操控的是同一块数据内存void test01(){ int a = 10;//引用必须要初始化 int &b = a;//一旦确定了是a的别名后,就不可以更改成别的变量的别名 //此时a,b访问同一块内存,他们的值输出也是相同的都为10 cout<< a <<endl; cout<< b <<endl; //
2020-08-24 16:11:52 286
原创 STL各个容器的使用以及常用的查找
关于vector容器的使用我写在了https://blog.csdn.net/qq_42002426/article/details/108169478所有容器都有size() empty()方法1.deque 双端数组,操作特点:在两端插入和删除效率都比较好,在指定位置插入,也会引起数据元素的移动。支持随机访问deque分段连续的内存空间deque的几种构造方法//构造void test01() { deque<int>d; deque<int>d1(10, 5
2020-08-23 21:16:43 602
原创 c++中vector容器的基本操作
什么是vector?向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,简单的理解就是一个可以动态变化的数组。vector的容量是随着你放入元素的数量而动态变化的。但是其只会增长而不是缩小基本操作在使用容器是要先写好头文件#include构造容器以int类型的为例子void test01() { vector<int> v1;//创建一个空容器 int arr[] =
2020-08-22 16:03:02 668
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人