自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 复杂链表的复制

输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 三步 法 链接:https://www.nowcoder.com/questionTerminal/f836b2c43afc4b35ad6adc41ec941dba来...

2018-07-28 00:27:13 166

转载 二叉树中和为某一值的路径

 二叉树中和为某一值的路径输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 链接:https://www.nowcoder.com/questionTerminal/b736e784e3e34731af99065031301bca...

2018-07-27 12:48:52 130

原创 拼多多第二题

#include <iostream>#include <vector>#include <algorithm>using namespace std;int main() { int number;//球星数量 int vote;//投票数 while(cin>>number>>vote) {...

2018-07-23 00:34:40 382

原创 拼多多第一题

#include<iostream>#include <math.h>#include<algorithm>using namespace std;int main(){ int n; cin>>n; int res; int temp; int m; int i=0; double...

2018-07-22 23:47:53 204

原创 有效IP识别

请解析IP地址和对应的掩码,进行分类识别。要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类。 所有的IP地址划分为 A,B,C,D,E五类 A类地址1.0.0.0~126.255.255.255; B类地址128.0.0.0~191.255.255.255; C类地址192.0.0.0~223.255.255.255; D类地址224.0.0...

2018-07-18 16:38:26 863

转载 火车进站

题目描述给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号。要求以字典序排序输出火车出站的序列号。 输入描述: 有多组测试用例,每一组第一行输入一个正整数N(0<N<10),第二行包括N个正整数,范围为1到9。输出描述: 输出以字典序从小到大排序的火车出站序列号,每个编号以空格隔开...

2018-07-17 17:21:58 994

转载 动态规划 | 带有通配符的字符串匹配

动态规划 | 带有通配符的字符串匹配(浅显易懂)时间:2015-08-15 06:46:15      阅读:5178      评论:0      收藏:0      [点我收藏+]标签:动态规划   wildcard   leetcode   字符串匹配   通配符   带有通配符的字符串匹配一、Leetcode | 44 Wildcard Matching(只有一个字符串包含...

2018-07-17 12:50:47 2567

原创 next_permutatio实现全排练

#include <iostream>#include <stdio.h>#include <algorithm>using namespace std;const int N=4;int num[N];int isSolve=0;int main(){ int A[N]; while(cin>>A[0]>&g...

2018-07-16 23:07:39 289

转载 static的用法(记忆性)

static用法小结 static关键字是C, C++中都存在的关键字, 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同, 本文以C++为准).(1)局部静态变量(2)外部静态变量/函数(3)静态数据成员/成员函数下面就这三种使用方式及注意事项分别说明一、局部静态变量在C/C++中, 局部变量按照存储形式可分为三种auto, stat...

2018-07-07 17:31:18 950

转载 深拷贝和浅拷贝的区别

深浅拷贝的区别:    浅拷贝是将原始对象中的数据型字段拷贝到新对象中去,将引用型字段的“引用”复制到新对象中去,不把“引用的对象”复制进去,所以原始对象和新对象引用同一对象,新对象中的引用型字段发生变化会导致原始对象中的对应字段也发生变化。    深拷贝是在引用方面不同,深拷贝就是创建一个新的和原始字段的内容相同的字段,是两个一样大的数据段,所以两者的引用是不同的,之后的新对象中的引用型字段发生...

2018-07-07 17:14:16 426 1

转载 typeof和Define

typedef是一种在计算机编程语言中用来声明自定义数据类型,配合各种原有数据类型来达到简化编程的目的的类型定义关键字。 #define是预处理指令。下面让我们一起来看。typedef是C语言语句,其功能是用户为已有数据类型取“别名”。 例如: typedef int INTEGER;  这以后就可用INTEGER来代替int作整型变量的类型说明了,如:  INTEGER a,b;   用type...

2018-07-07 14:17:23 1035

转载 sizeof()的用法

以下运行环境都是一般的,在32位编译环境中1、基本数据类型的sizeofcout<<sizeof(char)<<endl; //结果是1cout<<sizeof(int)<<endl; //结果是4cout<<sizeof(unsigned int)<&l...

2018-07-07 13:50:15 385

转载 C++程序内存分配

在现代的操作系统中,当我们说到内存,往往需要分两部分来讲:物理内存和虚拟内存。从硬件上讲,虚拟空间是CPU内部的寻址空间,位于MMU之前,物理空间是总线上的寻址空间,是经过MMU转换之后的空间。一般我们所说的程序在内存中的分布指的就是程序在虚拟内存中的存储方式。从低地址到高地址,可分为下面几段: 预留内存地址(操作系统维护的内存地址,不可访问) 程序代码区(只读,存代码和一些其他的东西); dat...

2018-07-06 23:53:36 231

原创 cpp面试(精华)

CPP面试总结一、CPP语言相关1、虚函数是怎么实现的2、虚函数与纯虚函数3、什么是多态,多态有什么用途。4、结构体与联合体的区别5、指针与引用的区别6、C++程序内存分布7、STL中vector、set、map是怎么实现的8、STL内存是怎么分配和管理的9、sizeof()的值,以及对齐原则10、typedef与#define的区别11、static的作用http://www.cnblogs.c...

2018-07-06 11:09:29 1754

转载 STL的底层实现机制

1.STL的底层实现:STL底层数据结构实现C++ STL 的实现:1.vector      底层数据结构为数组 ,支持快速随机访问2.list            底层数据结构为双向链表,支持快速增删3.deque       底层数据结构为一个中央控制器和多个缓冲区,详细见STL源码剖析P146,支持首尾(中间不能)快速增删,也支持随机访问deque是一个双端队列(double-ended...

2018-07-06 11:01:46 2221

原创 指针和引用的区别

1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int *p=&a;int a=1;int &b=a;上面定义了一个整形变量和一个指针变量p,该指针变量指向a的存储单元,即p的值是a存储单元的地址。而下面2句定义了一个整形变量a...

2018-07-05 23:17:17 156

转载 纯虚函数和虚函数的区别

首先:强调一个概念定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。定义一个函数为纯虚函数,才代表函数没有被实现。定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。1、简介假设我们有下面的类层次:class A{public:    virtual void foo()    {        c...

2018-07-05 20:56:14 170

转载 C++虚函数的实现机制

C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我在这里不做过多的阐述...

2018-07-05 20:07:27 289

原创 C++多态的实现

C++是面对对象的程序设计。面对对象的程序设计有4大特性:分别是,抽象、封装、继承、多态。今天我们就来总结一下多态的内容。多态:分为静态多态和动态多态:#include<iostream>using namespace std;int Add(int a,int b)//1{ return a+b;}char Add(char a,char b)//2{ ...

2018-07-05 15:51:19 134

转载 STL之Stringstream字符串流使用总结(转)

如果你已习惯了<stdio.h>风格的转换,也许你首先会问:为什么要花额外的精力来学习基于<sstream>的类型 转换呢?也许对下面一个简单的例子的回顾能够说服你。假设你想用sprintf()函数将一个变量从int类型转换到字符串类型。为了正确地完成这个任 务,你必须确保证目标缓冲区有足够大空间以容纳转换完的字符串。此外,还必须使用正确的格式化符。如果使用了不正确的格式化...

2018-07-05 14:08:28 263

转载 STL容器的使用方法(参考)

C++中有两种类型的容器:顺序容器和关联容器。顺序容器主要有vector、list、deque等。其中vector表示一段连续的内存,基于数组实现,list表示非连续的内存,基于链表实现,deque与vector类似,但是对首元素提供插入和删除的双向支持。关联容器主要有map和set。map是key-value形式,set是单值。map和set只能存放唯一的key,multimap和multise...

2018-07-05 11:13:51 630

转载 求n个元素中第二小元素

一、题目证明:在最坏情况下,利用n+ceil(lgn)-2次比较,即可得到n个元素中的第2小元素。(提示:同时找最小元素)二、算法过程step1:对所有元素,两个一组比较大小,小的一个进入下一轮比较。一直到比较出最小的元素。此时所有比较结果构成一棵二叉树。比较次数为n-1。step2:沿着树从树根向下到叶子,找出第二小的元素,比较次数是ceil[lgn]-1。令m2[p]表示以p为根的树中的第二小...

2018-07-01 21:46:43 983

原创 线性时间排序算法

一般我们使用的堆排序,归并排序都是属于比较排序,也就是通过比较元素的大小来进行排序,可以通过决策树分析出比较排序的时间下界是O(nlgn),堆排序和归并排序都是渐进最优的比较排序算法。还有其他的排序方法不是通过比较,下面总结一下:一:计数排序大致思路是将数组中所有元素对应小于这个元素的个数存储起来,这样我们可以直接知道这个元素的位置,因为可能出现相同的元素,所以我们从后面输出(为了稳定性)而且每次...

2018-07-01 18:08:07 817

转载 快速排序算法

快速排序快速排序是一个最坏情况时间复杂度为Θ(n2)Θ(n2),最好情况下时间复杂度为O(nlogn)O(nlogn)的排序算法。虽然在最坏情况下的时间复杂为n2n2,但是快速排序的平均性能非常好,只有Θ(nlogn)Θ(nlogn),而且我们也可以主动避免快速排序的最差的情况,所以快速排序在排序作业中还是应用比较广泛的。快速排序的基本思想我们现在有一数组A={ai,ai+1,...,aj}A={...

2018-07-01 16:57:45 130

转载 算法导论中的堆排序详解(参考别人画的图)

 我们先研究一下几种常见算法的复杂度和稳定性以及是否需要额外的空间开销堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。堆排序是利用堆的特性对记录序列进行排序的一种排序方法。即小根堆:父结点的值小于左右孩子结点的值,大顶堆则相反假设我们要排序的序列是{50,10,90,30,70,40,80,60,20}堆排序分为两...

2018-07-01 15:49:42 297

空空如也

空空如也

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

TA关注的人

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