自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 剑指offer-查找

问题1、二分查找//注意:二分查找的前提是数组基本有序int BinarySearch(int a[],int low,int high,int key){ while(low<=high){ int mid=low+(high-low)/2; if(a[mid]==key) return mid; e

2016-08-30 19:48:02 227

原创 剑指offer-队列和栈操作

问题1、两个栈实现队列class Queue{public: //入队 void Push(const int value){ s1.push(value); } //出队 int Pop(){ while (s1.size()) { s2.push(s1.top());

2016-08-30 17:55:39 192

原创 剑指offer-树

#include<iostream>#include<algorithm>#include<queue>#include<stack>using namespace std;struct BinaryTreeNode{ int data; BinaryTreeNode *left; BinaryTreeNode *right;};BinaryTreeNode

2016-08-30 13:09:55 244

原创 剑指offer-链表

单向链表的结构定义typedef int DataType; struct ListNode{ DataType value; ListNode *next;}问题1、往链表的末尾添加一个结点//给定头结点,往末尾插入一个结点void InsertNode(ListNode **head,DataType key){ ListNode *q=new ListNode;

2016-08-29 22:23:34 464

原创 C++ 内存对齐问题

C和C++不同:在C中struct/class不占有内存,C++中,struct/class通常占有1byte,原因是编译器强 行在里面放了一个char,这样可使这个class的不同实例化在内存中分配到独一无二的地址 1、最基本的内存对齐情况 首先确定最大类型的大小->按照结构体中类型声明顺序来分配空间。 eg1. struct A

2016-08-29 14:57:57 349

原创 浅谈MFC-1

MFC(微软基础类)是一种应用程序框架,定义了应用程序的一般处理流程,用于对Windows API实现基于面向对象技术的封装,隐藏在Windows下使用C++编程的大量内部细节。在开发应用程序的过程中,编程人员可以通过对类库中已有类的继承,生成功能更加强大的类库以供自己所用。 1、MFC的类层次结构 2、CView和CDocument的关系3、SendMessage和PostMessage的

2016-08-22 22:40:13 613

原创 操作系统-段式管理

1、段式管理的原理: 分区式管理和页式管理时的进程地址空间结构都是线性的,这要求对源地址进程程序进行编译、链接时,把源程序中的主程序、子程序、数据区等按线性空间的一维地址顺序排列起来。这使得不同作业或进程之间共享共有子程序和数据变得非常困难。 再者,从链接的角度看,分区管理和页式管理只能采用静态链接。一个大的进程可能包含上千个程序模块,对他们链接要花费大量CPU时间,而实际执行时间可能只用到其中

2016-08-22 11:53:38 2410

原创 操作系统-存储管理

存储器是由内存和外存组成。内存由顺序编址的块组成,每块包含相应的物理单元。CPU要启动相应的输入输出设备后才能使外存与内存交换信息。 1、虚拟存储器 存储管理系统吧进程中那些不经常被访问的程序段和数据放入外存中,待需要访问他们时再将他们调入内存。对于那些一部分数据和程序段在内存而另一部分在外存的进程,可用虚拟存储器来安排地址。有两种方法可以安排这些编译后的的目标代码的地址。一种方法是按照物理存储

2016-08-21 22:17:22 1936

原创 操作系统-处理机调度

处理机调度分为4级: 作业调度-》交换调度-》进程调度-》线程调度 1、衡量调度策略的指标 (1)周转时间 周转时间=完成时间-提交时间; (2)带权周转时间 带权周转时间=作业周转时间/作业执行时间 (3)吞吐率 (4)设备利用率,整个过程中某个设备使用的时间/总的时间 2、常用的进程和作业调度算法

2016-08-21 20:47:33 822

原创 操作系统-进程管理

进程:用来描述计算机程序的执行过程和作为资源分配的基本单位,反映操作系统的执行并发、资源共享以及用户随机的特点。 1、进程和程序的区别进程是一个动态概念,而程序则是一个静态概念。程序时指令的有序集合进程具有并发特性(独立性和异步性),而程序没有不同的进程可以包含同一程序,只是该程序对应的数据集不同2、进程的描述 (1)进程控制块PCB 是系统感知进程存在的唯

2016-08-21 20:28:32 268

原创 计算机网络问题总结

1、HTTP协议和HTTPS协议有什么区别 解: (1)https协议需要到ca申请证书,一般免费证书很少,需要交费 (2)http是超文本传输协议,信息是明文传输,https则是具有安全性的SSL加密传输协议 (3)http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443 (4)http的连接很简单,是无状态的,HTTPS协议是由

2016-08-20 20:16:47 386

原创 计算机网络-应用层

运输层为应用进程提供了端到端的通信服务。但不同的网络应用进程之间,还需要有不同的通信规则。因此在运输层协议之上,还需要有应用层协议。应用进程之间的通信必须遵守严格的规则。应用层的协议应当定义:应用进程交换的报文类型,如请求报文和响应报文各种报文类型的语法,报文中各个字段的详细描述字段的语义,即包含在字段中的意义进程何时、如何发送报文、以及对报文进行响应的规则1、域名系统DNS

2016-08-20 19:32:14 682

原创 计算机网络-运输层

问题一、运输层为相互通信的的应用进程提供逻辑通信 问题二、端口和套接字的意义 问题三、理解UDP和TCP协议 问题四、在不可靠的网络上实现可靠传输的工作原理 问题五、TCP的滑动窗口、流量控制、拥塞控制和连接管理 1、端口 应用层所有的应用进程都可以通过运输层传送到IP层,这就是复用;运输层从IP层收到数据报后必须向上交付给指定的应用进程,这就是分用。在运输层使用协议端口

2016-08-20 16:40:25 1085

原创 计算机网路-网络层

讨论网络通过路由器互连成一个互连网络的问题 关于中间设备的问题:物理层使用的中间设备是转发器数据链路层使用的中间设备是网桥和桥接器网络层使用的中间设备是路由器网络层以上使用的中间设备是网关1、IP地址的分类 IP地址::={<网络号>,<主机号>} 路由器仅根据目的主机所连接的网络号来转发分组,可以使路由

2016-08-19 22:27:36 428

原创 计算机网络-数据链路层

数据链路层介于物理层和网络层之间,在物理层提供的服务的基础上向网络层提供服务,最基本的服务是将源自网络层在的数据可靠地传输到相邻结点的目标机网络层。所以数据链路层的功能是:在局域网中(不通过路由器),分组怎样从一个主机传送到另一个主机??(封装成帧,透明传输,差错检测)1、数据链路层使用的信道点对点信道: 一对一的点对点的通信方式 网络适配器实现了相关通信协议加到物理链路上就构成了

2016-08-19 11:28:10 554

原创 华为OJ之漂亮度

知识点:map pair vector string 1.map容器的相关操作map<string,int> ismap; //map定义变量,每个key唯一,value可以不同string word;while(cin>>word){ map[word]++; //有计数的功能}//1.关联容器的初始化赋值操作map<string,int> ism

2016-08-10 18:25:03 350

原创 华为OJ训练一

1 问题描述: 我们知道人民币有1,2,5,10,20,50,100这几种面值,现在给你n(1<=n<=250)元让你计算换成用上面这些面额表示且总数不超过100张,共有几种。比如4元,能用4张1元、2张1元和1张2元、2张2元,三种表示方法。 输入有多组,每组一行,为一个集合n,输入以0结束 输出该面值有几种表示方法.输入输出实例:input: 1 4 0

2016-08-10 13:22:33 577

原创 链表逆转和Fib队列(面试题)

问题1 对于链表:A->B->C->D->E->F->NULL;要求将链表逆转struct Node{ char ch; Node *next;};Node *ReverseNode(Node *head){ Node *pre=NULL; Node *p=head; while(p){ Node *next=p->next; //必

2016-08-09 16:49:59 414

原创 华为OJ相关算法

1、合唱队问题 给定一个身高数组,从里面抽出若干人之后,使之保持身高由小到大,再从大到小的合唱队队形,求出至少出队的人数! 解题思路:必须得考虑清楚每一个位置左边递增的人数和右边递减的人数,两者的最大和即为最长的合唱队人数。所以可以两次遍历数组,求最长递增(减)子序列即可。关于最长递增子序列的问题我们已经很熟悉了。下面直接码上代码已经相关过程解析。#include<iostrea

2016-08-09 15:09:15 840

原创 递归算法的应用(迷宫)

题目:给定一个m*n的迷宫,找到任意两个点之间的路径!如图所示 这是一个10*10的矩阵,标记为0的代表不可以走,1代表可以走,找出起点(1,1)到终点(8,8)的路径。解题思路:对于任何一个位置(i,j),下一步共有4个方向可以选择,包括向上(i-1,j),向下(i+1,j),向左(i,j-1),向右(i,j+1);走过的点必须标记出来,避免下一次重新走,如果走到某个位置走不通了,必

2016-08-09 10:30:01 2905 1

原创 单例设计模式

设计一个类,只能实现该类的一个实例! 1 使用C++实现一个懒加载的单例class Singleton{public: static Singleton GetInstance(){ if(instance==NULL) instance=new Singleton(); return instance; }private

2016-08-08 23:02:33 191

空空如也

空空如也

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

TA关注的人

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