自定义博客皮肤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)
  • 收藏
  • 关注

原创 把数组中的数分为两组,使得两组的和相差最小的情况下保证两组数据个数的差值最小

给定一个数组,分成两个数组使得两个组的和的差的绝对值最小,并且输出两部分个数差值最小#include <iostream>#include <cstdio>#include <cstring> //for memset #include <algorithm> //for max...

2019-08-23 22:26:36 4431

原创 leetcode:基本计算器123及其变体 (c++实现)

基本计算器,参考博客:https://www.cnblogs.com/grandyang/p/4606334.html基本计算器1:leetcode224题class Solution {public: int calculate(string s) { int res=0,num=0,sign=1,n=s.size(); for(int i=0;i...

2019-08-08 17:21:59 348

原创 2019年6月25日 局域网相关知识,队列

1局域网体系结构分为3层:1.物理层:处理比特流,处理物理连接,处理机械、电气、功能和规程的特性。2.媒体访问控制MAC子层:负责介质访问控制机制的实现。3.逻辑链路控制LLC子层:负责屏蔽掉MAC子层的不同实现,将其变成统一的LLC界面。数据链路层:LLC子层和MAC子层**2**顺序存储结构的循环队列假设循环队列的队尾指针是rear,队头是front,其中QueueSize...

2019-06-25 12:11:55 231

翻译 c++中的几种内存分配

malloc 函数: void *malloc(unsigned int size)在内存的动态分配区域中分配一个长度为size的连续空间,如果分配成功,则返回所分配内存空间的首地址,否则返回NULL,申请的内存不会进行初始化。2)calloc 函数: void *calloc(unsigned int num, unsigned int size)按照所给的数据个数和数据类型所占字节数...

2019-06-22 22:47:09 309

原创 c和c++中的缺省(搬运自牛客)

一、返回值C中:如果函数未指定返回值类型,则默认为intc++中:如果一个函数没有返回值,返回值类型必须指定为void二、参数列表C中:如果函数没有指定参数列表,则默认可以接受任意多个参数C++中:有严格的类型检测,没有参数列表的函数默认为void,不接受任意参数三、缺省参数(即给参数一个默认值)C:不支持C++:支持(如果没有指定实参则使用缺省值,有则使用指定实参)1.默认实参...

2019-06-22 17:31:33 680

原创 c++基础(运算符重载)

解释:(1)只能使用成员函数重载的运算符有:=、()、[]、->、new、delete。(2)单目运算符最好重载为成员函数。(3) 对于复合的赋值运算符如+=、-=、*=、/=、&=、!=、~=、%=、>>=、<<=建议重载为成员函数。(4) 对于其它运算符,建议重载为友元函数。运算符重载的方法是定义一个重载运算符的函数,在需要执行被重载的运算符时,...

2019-06-22 16:05:37 230

翻译 宏和函数和内联函数

宏做的是简单的字符串替换(注意是字符串的替换,不是其他类型参数的替换),而函数的参数的传递,参数是有数据类型的,可以是各种各样的类型.宏的参数替换是不经计算而直接处理的,而函数调用是将实参的值传递给形参,既然说是值,自然是计算得来的.宏在编译之前进行,即先用宏体替换宏名,然后再编译的,而函数显然是编译之后,在执行时,才调用的.因此,宏占用的是编译的时间,而函数占用的是执行时的时间.宏的参数...

2019-06-22 14:43:08 253

原创 数组中的逆序对(c++)

参考博客:https://www.cnblogs.com/wanglei5205/p/8893700.html题目描述:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007输入描述:题目保证输入的数组中没有的相同的数字数据范围:对于%50...

2019-06-13 17:21:05 1556

原创 01背包,完全背包,多重背包

-查阅了很多相关的博客,总结了一下,和我之前总结二分搜索的情况一样,3种背包都统一一下模板,第二层循环都只用倒序进行操作,为什么倒序是参考文末的第二篇CSDN博客,每一个i值下面的循环,从j开始更新不会覆盖j-1到0的f值,因为用的是一维数组,所以要考虑到覆盖的问题。如果从低到高更新假如一共有10个物品,在第i个循环中,假如已经更新到第5个,也就是说前4个都是更新过的,而且是在第i个循环中更新的,...

2019-06-05 22:52:26 693

翻译 C++中的 default 和 delete

1. = default1.1 引入背景**C++ 的类有四类特殊的成员函数,分别为:默认构造函数,析构函数,拷贝函数以及拷贝赋值函数。如果程序没有显式地为一个类定义某个特殊成员函数,而又需要用到该特殊成员函数时,编译器会隐式地为这个类生成一个默认的特殊成员函数。例如:class X {private: int a;};X x; //可以编译通过,编译器隐式生成默认构造函...

2019-05-27 11:04:25 1037

转载 死锁发生的条件以及如何解决死锁

**死锁是指两个或两个以上进程在执行过程中,因争夺资源而造成的下相互等待的现象。死锁发生的四个必要条件如下:互斥条件:进程对所分配到的资源不允许其他进程访问,若其他进程访问该资源,只能等待,直至占有该资源的进程使用完成后释放该资源;请求和保持条件:进程获得一定的资源后,又对其他资源发出请求,但是该资源可能被其他进程占有,此时请求阻塞,但该进程不会释放自己已经占有的资源不可剥夺条件:进程已获得...

2019-05-05 21:09:42 661

原创 类继承中构造函数和析构函数的调用

只调了CA的析构函数,出问题了,这样的话,就会出现基类的构造函数调用了,但是派生类的构造函数没调用,对象的派生部分不会被销毁,这将导致资源泄漏,所以我们在设计一个类的时候,如果类至少拥有一个虚函数,或者说基类被设计用于多态,在这种情况下,一个派生类的对象可能通过一个基类指针来进行操作,然后进行销毁,如果这样的话,那么这个基类的析构函数要设置成虚拟的,有些类虽然是基类,但是不是用于多态的,没有虚函数,没有被设计成允许经由基类接口派生类对象进行操作,那么也无需设成虚析构函数,毕竟增加了开销。 情况3就是增加

2019-04-28 15:36:55 818

原创 回溯算法常见例题总结

46.全排列给定一个没有重复数字的序列,返回其所有可能的全排列。输入: [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]class Solution {public: vector<vector<int>> permute(vector<int>&...

2019-04-22 22:01:04 795

原创 单调栈stack--c++

单调递减栈遍历高度,如果此时栈为空,或者当前高度小于等于栈顶高度,则把当前高度的坐标压入栈,注意我们不直接把高度压入栈,而是把坐标压入栈,这样方便我们在后来算水平距离。当我们遇到比栈顶高度大的时候,就说明有可能会有坑存在,可以装雨水。此时我们栈里至少有一个高度,如果只有一个的话,那么不能形成坑,我们直接跳过,如果多余一个的话,那么此时把栈顶元素取出来当作坑,新的栈顶元素就是左边界,当前高度是右...

2019-04-22 10:30:07 1762

翻译 线程同步的四种方式

线程同步的四种方法1、临界区(Critical Section):通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。优点:保证在某一时刻只有一个线程能访问数据的简便办法缺点:虽然临界区同步速度很快,但却只能用来同步本进程内的线程,而不可用来同步多个进程中的线程。2、互斥量(Mutex):为协调共同对一个共享资源的单独访问而设计的。互斥量跟临界区很相似,比临界区复杂,...

2019-04-20 16:09:53 8279

转载 ACID

事务的四个基本特征:Atomic(原子性):事务中包含的操作被看做一个逻辑单元,这个逻辑单元中的操作要么全部成 功,要么全部失败。Consistency(一致性):事务完成时,数据必须处于一致状态,数据的完整性约束没有被破坏,事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没 有执行过一样。Isolation(隔离性):事务允许多个用户对同一个...

2019-04-16 10:42:20 1877

转载 腾讯笔试题:穿越怪兽谷c++

题目描述解法采用了递归的解法由于每次遇到怪兽,先不论打不打过,都有两种选择,贿赂与不贿赂,即会导致出现两种路线。于是通过递归调用,生成2N-1条路线。一次递归方法中,分别计算贿赂与不贿赂这两条路线的花费金币数,比较后返回花费最少的路线所需的金币数。由于此方法类似于穷举算法,为了减少计算量,走到某一步时,若怪兽武力值大于nowP时,直接截断返回整数的最大值Integer.MAX_VALUE,...

2019-04-15 17:05:04 404

原创 c++二分查找的左闭右开和左闭右闭的详解

二分查找的数组中没有重复的元素#这个只是适用一般的情况情况1:#include<iostream>#include<vector>#include<string>using namespace std;int lower_bound(vector<int>& nums, int target)//左闭右开的区间{ int l...

2019-04-09 11:40:42 2469

空空如也

空空如也

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

TA关注的人

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