自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 【操作系统导论】第六章作业:测量系统调用和上下文切换的成本(LINUX系统)

创建两个管道,两个进程。让进程1从管道1中读数据、向管道2中写数据;让进程2向管道1中写数据、从管道2中读数据。触发进程切换的机制是,利用管道通信,若管道中此时没有数据,进程仍从该管道中读取数据,那么该进程将会被阻塞,调度器从就绪进程队列中选择一个进程进行运行。利用Linux上的sched_setaffinity()函数,可以使得进程绑定到特定的处理器上,从而确保在测量操作系统在同一个处理器上切换上下文的成本。取最小值,即上下文切换成本需要1us左右的时间。

2022-10-04 21:52:47 375 1

转载 C++保留有效位和有效小数位,最佳实践

C++保留有效位和有效小数位,最佳实践

2022-09-24 15:52:28 287

原创 【C++】VS写模板类时遇到:error LNK2019: 无法解析的外部符号

写了一个模板类,头文件(.h)和资源文件(.cpp)分开写,资源文件中已include了该模板类的头文件。只在main文件中include了头文件,编译时出现错误提示:“error LNK2019: 无法解析的外部符号”。解决方案:1、 在.cpp文件已经包含有.h文件的情况下,只在main文件中包含模板类的.cpp文件即可。2、 将模板类的声明和实现写在同一个文件中(.hpp),在main文件中包含该.hpp文件即可。3、 将.h文件和.cpp文件同时包含进main文件中前两种方法其实都是将声明

2022-02-20 18:16:49 1828

原创 【C++】成员函数形参为本类对象的引用,可直接访问其私有成员

注意到这个问题是在看邓俊辉的《数据结构(C++语言版)》时看到的,第一眼以为是邓公写书时的疏忽,因此还搜索了这本书的勘误,居然没找到,于是打开编辑器试了一下,然后震惊的发现书上的代码没错,对不起是我太菜不该怀疑邓公。书上的源代码抽取出来如下:template<typename T>class Vector {private: int _size;public: Vector(const Vector<T>& V) { this->_size = V._s

2022-02-17 22:12:45 1516

原创 【50】Pow(x,n)

实现 pow(x, n) ,即计算 x 的 n 次幂函数(即,xn )。示例 1:输入:x = 2.00000, n = 10输出:1024.00000示例 2:输入:x = 2.10000, n = 3输出:9.26100示例 3:输入:x = 2.00000, n = -2输出:0.25000解释:2-2 = 1/22 = 1/4 = 0.25提示:-100.0 < x < 100.0-231 <= n <= 231-1-104 <= xn &l

2022-02-15 12:00:36 151

原创 【240】搜索二维矩阵Ⅱ

编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。class Solution {public: bool searchMatrix(vector<vector<int>>& matrix, int target) { if(matrix.size()==0 && !matrix[0].size()==0){

2022-01-17 17:50:36 178

原创 【11】盛最多水的容器

给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。class Solution {public: int maxArea(vector<int>& height) { int i=0,j=height.size()-1,res=0;

2022-01-17 17:41:28 451

原创 【283】移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/move-zeroes著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。class Solution {public: void mo

2021-12-24 17:34:18 67

原创 【26】删除有序数组中的重复项

给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝int len = removeDuplicates(num

2021-12-24 17:09:57 86

原创 【27】移除元素

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-element著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。class Solution {public

2021-12-23 23:04:31 84

原创 【367】有效的完全平方数

给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。进阶:不要 使用任何内置的库函数,如 sqrt 。示例 1:输入:num = 16输出:true示例 2:输入:num = 14输出:false提示:1 <= num <= 2^31 - 1来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/valid-perfect-square著作权归领扣网络所有。商

2021-12-23 22:31:36 495

原创 【69】Sqrt(x)

给你一个非负整数 x ,计算并返回 x 的 算术平方根 。由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。示例 1:输入:x = 4输出:2示例 2:输入:x = 8输出:2解释:8 的算术平方根是 2.82842…, 由于返回类型是整数,小数部分将被舍去。提示:0 <= x <= 231 - 1来源:力扣(LeetCode)链接:https://leetc

2021-12-23 22:11:15 3287

原创 【34】在排序数组中查找元素的第一个和最后一个位置

给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。进阶:你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗?示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例 2:输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]示例 3:输入:nums = [], t

2021-12-23 21:20:02 156

原创 【35】搜索插入位置

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例 2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4示例 4:输入: nums = [1,3,5,6], target

2021-12-23 18:34:54 92

原创 【704】二分查找

给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例 2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1提示:你可以假设 nums 中的所

2021-12-23 18:29:43 193

原创 【C++】int类型转换为unsigned int类型

int类型强制转换为unsigned int时发生了什么?前言关注到这个问题是因为发现了一点有趣的事情,若将-1与(unsigned int)1比较会出现如下情况:#include<iostream>using namespace std;int main(){ if (-1 < (unsigned int)1) cout << "-1小于(unsigned int)1为真" << endl; else cout << "-1小于(

2021-12-11 00:53:51 12648 2

原创 【C++】单例模式代码实现

C++实现单例模式一、什么是单例模式单例模式,是指一个类最多只能有一个实例化的对象。这个唯一对象并非在类的定义时就创建,而是在该类第一次被使用时才被创建,有别于全局变量。二、实现思路1、一个类只能有一个实例化对象,因此要禁止类的用户在类外随意的new出来对象,或者直接定义一个对象。要保证这一点,我们自然想到将构造函数私有化。同时,将析构函数私有化,类的用户无法在类外直接delete该类的对象的指针。class CSingleton{private: CSingleton(){ } ~CS

2021-12-10 18:34:00 1345 1

原创 【微信聊天机器人】基于python实现的PC端个人微信聊天机器人

python编写的PC端微信聊天机器人

2021-12-03 00:10:49 7183 8

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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