自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++之继承

1)为什么要继承 实现代码复用。 在实例化一个派生类对象时,先调用基类构造函数,在调用派生类构造函数; 销毁派生类对象时,析构函数调用顺序正好相反#include<iostream>#include<string>using namespace std;class Person{public: Person(){ cout << "Person()" << end

2017-05-19 14:05:10 331

原创 C++之封装(2)

1)对象数组class A{ public: int x;}A a[10];A *p=new A[10];2)对象成员 一个类的成员对象为一个类对象, 当创建一个该类的对象时,先创建该类中的对象成员,再创建类对象; 当销毁一个对象时,顺序正好相反3)深拷贝和浅拷贝 浅拷贝:简单的进行数据拷贝,当类中存在指针成员变量时,当使用浅拷贝时,会使得指针指向同一块内存,会

2017-05-18 22:07:40 321

原创 C++之封装

**类:一组具有相同属性和行为对象的集合 对象:一个类具体的实例**#include<iostream>#include<string>using namespace std;class Students{public: Students(){} Students(const Students&){} ~Students(){} void setName(s

2017-05-18 16:16:02 420

原创 数据结构之链表实现(通讯录)

https://github.com/huheqing/GIT/tree/master/MyList_Node

2017-05-18 13:53:23 5219

原创 数据结构之线性表(数组实现)

#ifndef LIST_H#define LIST_Hclass List{public: List(){} List(int size); ~List(); void ClearList(); bool ListEmpty(); int ListLength(); bool GetElem(int i, int &e); int

2017-05-18 13:52:20 433

原创 C/C++ 结构体对齐原则

先介绍四个概念: 1)数据类型自身的对齐值:基本数据类型的自身对齐值,等于sizeof(基本数据类型)。 2)指定对齐值:#pragma pack (value)时的指定对齐值value。 3)结构体或者类的自身对齐值:其成员中自身对齐值最大的那个值。 4)数据成员、结构体和类的有效对齐值:自身对齐值和指定对齐值中较小的那个值。 有效对齐值N是最终用来决定数据存放地址方式的值,最重要。

2017-05-16 21:43:59 574

原创 C++ try语句块和异常处理

#include<iostream>using namespace std;int main(){ int a; int b; cout << "input two integers:" << endl; while (cin >> a >> b){ try{ if (0 == b) throw

2017-05-11 11:26:06 345

原创 数据结构之栈模板实现(3)

注意:1 注意模板的格式,声明文件和实现文件都放在头文件中,无法实现分离编译; 2 学会重载运算符和友元函数使用#ifndef MYSTACK_H#define MYSTACK_Htemplate <typename T>class MyStack{public: MyStack(){} MyStack(int size); //分配栈空间

2017-05-11 10:50:09 300

原创 数据结构之栈复杂数据应用实现(2)

#include<iostream>#include"MyStack.h"using namespace std;/* 栈 要求: 1.定义Coordinate坐标类 2.改造栈类,使其可以适用于坐标类 目的:理解抽象数据类型在栈中的应用*/int main(){ Coordinate c1(1, 2); Coordinate c2(

2017-05-11 10:19:21 229

原创 数据结构之栈实现(1)

#ifndef MYSTACK_H#define MYSTACK_Hclass MyStack{public: MyStack(){} MyStack(int size); //分配栈空间 ~MyStack(); bool stackEmpty(); bool stackFull(); void clearStack(); in

2017-05-11 09:33:41 212

原创 数据结构之环形队列应用(2)

实现:队列里存放每个顾客信息#ifndef CUSTOMER_H#define CUSTOMER_H#include<string>using namespace std;class Customer{public: Customer(){} Customer(string name,int age); void printInfo()const;private:

2017-05-10 22:12:15 418

原创 数据结构之环形队列实现(1)

注意:判空,判队列满, MyQueue.h#ifndef MYQUEUE_H#define MYQUEUE_H/* 环形队列C++实现*/class MyQueue{public: MyQueue(int queueCapacity); //构造函数 virtual ~MyQueue(); void ClearQueue(); bool Q

2017-05-10 21:23:50 628

原创 单链表冒泡排序

#include<iostream>#include<algorithm>#include<string>#include<vector>#include<unordered_map>#include<fstream>#include<sstream>#include<queue>#include<stack>#include<map>#include<unordered_map

2017-04-17 22:57:13 458

转载 大端序和小端序

http://www.cnblogs.com/flysnail/archive/2011/10/25/2223721.html

2017-04-16 10:39:04 307

转载 华为oj中级 24点运算

描述 计算24点是一种扑克牌益智游戏,随机抽出4张扑克牌,通过加(+),减(-),乘(*), 除(/)四种运算法则计算得到整数24,本问题中,扑克牌通过如下字符或者字符串表示,其中,小写joker表示小王,大写JOKER表示大王: 3 4 5 6 7 8 9 10 J Q K A 2 joker JOKER 本程序要求实现:输入4张牌,输出一个算式,算式

2017-04-05 17:40:57 1090

原创 华为oj中级 Redraiment的走法

描述 题目描述 Redraiment是走梅花桩的高手。Redraiment总是起点不限,从前到后,往高的桩子走,但走的步数最多,不知道为什么?你能替Redraiment研究他最多走的步数吗? 样例输入 6 2 5 1 5 4 5样例输出 3提示 Example: 6个点的高度各为 2 5 1 5 4 5 如从第1格开始走,最多为3步, 2 4 5 从第2格开始走,最多

2017-04-05 17:03:03 702

原创 华为oj中级 201301 JAVA 题目2-3级

描述 请编写一个函数(允许增加子函数),计算n x m的棋盘格子(n为横向的格子数,m为竖向的格子数)沿着各自边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。 知识点 字符串,循环,函数,指针,枚举,位运算,结构体,联合体,文件操作,递归 运行时间限制 10M 内存限制 128 输入 输入两个正整数输出 返回结果 样例输入

2017-04-05 16:39:01 328

原创 华为oj中级 字符串运用-密码截取

描述 Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的密码进行通信,比如像这些ABBA,ABA,A,123321,但是他们有时会在开始或结束时加入一些无关的字符以防止别国破解。比如进行下列变化 ABBA->12ABBA,ABA->ABAKK,123321->51233214 。因为截获的串太长了,而且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cath

2017-04-05 16:24:28 291

转载 华为oj中级 二维数组操作

描述 有一个数据表格为二维数组(数组元素为int类型),行长度为ROW_LENGTH,列长度为COLUMN_LENGTH。对该表格中数据的操作可以在单个单元内,也可以对一个整行或整列进行操作,操作包括交换两个单元中的数据;插入某些行或列。 请编写程序,实现对表格的各种操作,并跟踪表格中数据在进行各种操作时,初始数据在表格中位置的变化轨迹。详细要求:1.数据表规格的表示方式为“行

2017-04-05 15:03:23 812

原创 华为oj中级 数据分类处理

#include<iostream>#include<algorithm>#include<string>#include<vector>#include<unordered_map>#include<fstream>#include<sstream>#include<queue>#include<stack>#include<map>#include<unordered_map

2017-03-29 14:36:54 265

原创 华为oj中级 输入整型数组和排序标识,对其元素按照升序或降序进行排序

#include<iostream>#include<algorithm>#include<string>#include<vector>#include<unordered_map>#include<fstream>#include<sstream>#include<queue>#include<stack>#include<map>#include<unordered_map

2017-03-29 11:51:57 328

原创 华为oj中级 计算日期到天数转换

#include<iostream>#include<algorithm>#include<string>#include<vector>#include<unordered_map>#include<fstream>#include<sstream>#include<queue>#include<stack>#include<map>#include<unordered_map

2017-03-29 11:44:02 364

原创 华为oj中级 参数解析

#include<iostream>#include<algorithm>#include<string>#include<vector>#include<unordered_map>#include<fstream>#include<sstream>#include<queue>#include<stack>#include<map>#include<unordered_map

2017-03-29 11:17:58 443

转载 华为oj中级 矩阵乘法估算量

描述 矩阵乘法的运算量与矩阵乘法的顺序强相关。例如: A是一个50×10的矩阵,B是10×20的矩阵,C是20×5的矩阵计算A*B*C有两种顺序:((AB)C)或者(A(BC)),前者需要计算15000次乘法,后者只需要3500次。编写程序计算不同的计算顺序需要进行的乘法次数知识点 字符串 运行时间限制 10M 内存限制 128 输入 输入多行,先输入要计算乘法的矩阵个数

2017-03-29 10:41:40 436

原创 华为oj中级 查找两个字符串a,b中的最长公共子串

描述 查找两个字符串a,b中的最长公共子串。 详细描述:查找两个字符串a,b中的最长公共子串。接口设计及说明:/******************************************************************* Description : 查找两个字符串a,b中的最长公共子串 Input Param : String stringA, 输入字符

2017-03-29 09:23:37 356

转载 华为oj中级 高精度加法

描述 在计算机中,由于处理器位宽限制,只能处理有限精度的十进制整数加减法,比如在32位宽处理器计算机中, 参与运算的操作数和结果必须在-231~231-1之间。如果需要进行更大范围的十进制整数加法,需要使用特殊 的方式实现,比如使用字符串保存操作数和结果,采取逐位运算的方式。如下: 9876543210 + 1234567890 = ? 让字符串 num1=”9876543210”,字符串

2017-03-28 10:51:17 288

原创 华为oj中级 表达式求值

描述 给定一个字符串描述的算术表达式,计算出结果值。输入字符串长度不超过100,合法的字符包括”+, -, *, /, (, )”,”0-9”,字符串内容的合法性及表达式语法的合法性由做题者检查。本题目只涉及整型计算。/*功能: 对输入的字符串表达式进行求值计算,并输出结果。输入:String inputString:表达式字符串 返回: int :正常返回true,失败返回false*/

2017-03-28 09:51:34 546

转载 华为oj中级 计算字符串的距离

描述 Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。编辑距离的算法是首先由俄国科学家Levenshtein提出的,故又叫Levenshtein Distance。 Ex: 字符串A:abcdefg 字符串B: abcdef 通过增加或是删掉字符”g”的方式

2017-03-27 09:41:43 183

转载 华为oj 四则运算

描述 请实现如下接口 /* 功能:四则运算 * 输入:strExpression:字符串格式的算术表达式,如: “3+2*{1+2*[-4/(8-6)+7]}” * 返回:算术表达式的计算结果 */ public static int calculate(String strExpression) { /*

2017-03-27 09:27:01 507

转载 华为oj中级 从单向链表删除指定节点

描述 输入一个单向链表和一个节点的值,从单向链表中删除等于该值的节点,删除后如果链表中无节点则返回空指针。 链表结点定义如下: struct ListNode { int m_nKey; ListNode* m_pNext; }; 详细描述: 本题为考察链表的插入和删除知识。 链表的值不能重复 构造过程,例如 1 -> 2 3 -> 2

2017-03-27 09:12:30 227

转载 华为oj中级 寻找等差数列

描述 题目标题: 在给定的区间范围内找出所有素数能构成的最大的等差数列(即等差数列包含的素数个数最多)。详细描述: 接口说明 原型: int GetMaxArray(unsignedint m, unsignedint n, unsignedint *pArrayNum , unsignedint *pArray) 输入参数: unsigned int m 给定的区间下限 unsig

2017-03-26 14:34:15 502

转载 华为oj中级 线性插值

描述 信号测量的结果包括测量编号和测量值。存在信号测量结果丢弃及测量结果重复的情况。1.测量编号不连续的情况,认为是测量结果丢弃。对应测量结果丢弃的情况,需要进行插值操作以更准确的评估信号。 采用简化的一阶插值方法,由丢失的测量结果两头的测量值算出两者中间的丢失值。 假设第M个测量结果的测量值为A,第N个测量结果的测量值为B。则需要进行(N-M-1)个测量结果的插值处理。进行一阶线性插

2017-03-26 14:21:12 536

转载 华为oj 按字节截取字符

描述 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如”我ABC”4,应该截为”我AB”,输入”我ABC汉DEF”6,应该输出为”我ABC”而不是”我ABC+汉的半个”。 接口说明 原型:public String cutString(String s, int length)知识点 字符串 运行时间限制 10M 内存限制 1

2017-03-26 12:16:42 202

转载 华为oj中级 Sudoku-Java

描述 问题描述:数独(Sudoku)是一款大众喜爱的数字逻辑游戏。玩家需要根据9X9盘面上的已知数字,推算出所有剩余空格的数字,并且满足每一行、每一列、每一个粗线宫内的数字均含1-9,并且不重复。 输入: 包含已知数字的9X9盘面数组[空缺位以数字0表示] 输出: 完整的9X9盘面数组 知识点 查找,搜索,排序 运行时间限制 10M 内存限制 128 输入 包含已知数字的

2017-03-25 15:10:22 358

转载 华为oj中级 迷宫问题

描述 定义一个二维数组N*M(其中2<=N<=10;2<=M<=10),如5 × 5数组下所示: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着

2017-03-25 14:55:17 729

原创 华为oj中级 求小球落地5次后所经历的路程和第5次反弹的高度

描述 假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高? /** * 统计出第5次落地时,共经过多少米? * * @param high 球的起始高度 * @return 英文字母的个数 */public static double getJourney(int high){ return 0;}/*

2017-03-25 14:40:26 392

原创 华为oj中级 统计每个月兔子的总数

描述 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?/** * 统计出兔子总数。 * * @param monthCount 第几个月 * @return 兔子总数 */public static int getTotalCount(int monthCount){ return 0;}

2017-03-25 14:31:40 342

原创 华为oj中级 整数与IP地址之间的转换

描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成 一个长整数。 举例:一个ip地址为10.0.3.193 每段数字 相对应的二进制数 10 00001010 0 00000000 3

2017-03-24 11:46:03 360

原创 华为oj中级 【中级】字符串运用-密码截取

述 Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的密码进行通信,比如像这些ABBA,ABA,A,123321,但是他们有时会在开始或结束时加入一些无关的字符以防止别国破解。比如进行下列变化 ABBA->12ABBA,ABA->ABAKK,123321->51233214 。因为截获的串太长了,而且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cathc

2017-03-24 11:28:47 323

原创 华为oj中级 【中级】单词倒排

描述 题目描述 对字符串中的所有单词进行倒排。 说明: 1、每个单词是以26个大写或小写英文字母构成; 2、非构成单词的字符均视为单词间隔符; 3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符; 4、每个单词最长20个字母; 样例输入 I am a student 样例输入 student a am I 知

2017-03-24 11:09:47 232

空空如也

空空如也

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

TA关注的人

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