c++学习笔记
文章平均质量分 77
miaomiao328
这个作者很懒,什么都没留下…
展开
-
函数的重载
重载用于在给定了参数列表和一组候选函数成员的情况下选择一个最佳函数成员来实施调用,函数重载就是一个类中有几个同名函数但参数表不同。 重载分为普通方法重载和基类(也就是父类)虚方法的重载 普通方法的重载指的是类中两个以上的方法(包括隐藏的继承而来的方法) ;取的名字相同的名字,但使用的参数类型或者参数个数不同! 对基类方法的重载是函数重载的另一种特原创 2016-06-27 10:49:37 · 393 阅读 · 0 评论 -
实现一颗二叉树的层序遍历。
1.--实现一颗二叉树的层序遍历。分析如下:1.如果此二叉树为空直接返回;2.要想层序遍历二叉树,我们必须要一个容器来保存它的左右孩子节点3.这个容器必须是先进先出,所以我们选择队列4.已经遍历过的节点必须从队列中pop出去代码如下:#include#includeusing namespace std;struct Node{ Node(int va原创 2017-07-21 15:33:44 · 1186 阅读 · 0 评论 -
判断出栈序列是否合法
题目描述:1--元素出栈、入栈顺序的合法性。如:入栈的序列(1,2,3,4,5),出栈序列为(4,5,3,2,1),则合法。入栈的序列(1,2,3,4,5),出栈序列为(4,5,2,3,1),则不合法。 分析如下:1.如果两个数组长度不相等,直接不合法2.如果两个数组都为空,合法3.S用来正常的压栈,q村正确的出栈序列代码如下:#include#include#原创 2017-07-21 11:33:31 · 2403 阅读 · 1 评论 -
链表面试题
1.简单链表给出如下链表,有以下要求:要求1:逆序打印该链表(如:3->2->5->1->4结果应为41523)解题思路:利用栈的后进先出特性来解决代码如下:void R_print(Node* Head)//逆序打印链表 { if(Head==NULL) return ; stack s1; Node* cur=Head; while(cur)原创 2017-07-12 20:15:15 · 433 阅读 · 0 评论 -
不用+的加法
今天我在牛客网上看到一个有趣的题。题目描述:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。其实当时是这样想的:你不让我用+,我可以用“++”,“+=”啊,事实证明我的代码也确实提交通过了。以下是我的代码:class Solution {public: int Add(int num1,int num2) { if(原创 2017-05-28 18:22:22 · 306 阅读 · 0 评论 -
部分复杂度问题
算法的时间复杂度:算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。这是一个关于代表算法输入值的字符串的长度的函数。时间复杂度常用大O表示法,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,它考察当输入值大小趋近无穷时的情况。下面是部分时间复杂度对比:算法的空间复杂度:空间复杂度(SpaceComplexity)是对一个算法在运行过程中原创 2016-09-16 17:38:43 · 530 阅读 · 0 评论 -
c++之复数类运算
在写之前本人头脑是懵的,因为完全忘记了复数是什么,原谅我高中数学不好。那么我们大体回顾一下复数,即a+bi,那么关于它的运算法则大体有以下几种。1.加法法则 复数的加法按照以下规定的法则进行:设z1=a+bi,z2=c+di是任意两个复数,则它们的和是 (a+bi)+(c+di)=(a+c)+(b+d)i;返回值类型也应为复数(complex)原创 2016-07-06 14:53:18 · 24053 阅读 · 4 评论 -
引用和指针
指针和引用概念上区别:指针的定义格式如下:*[=];指出指针类型,同标识符,*用来表示他后边的标识符是指针名。**指针在定义时可以初始化,也可以不初始化。int a=5;int *pa=&a;//pa是一个int型变量a的指针以下为一些常用的不同类型的指针的定义格式:double *p; //p是一个double型变量的指针char *p原创 2016-06-30 13:58:40 · 813 阅读 · 0 评论 -
剑指offer之字符串到整数的转换,例如输入字符串12345,输出整数12345.
试编写程序实现字符串到整数的转换,例如输入字符串12345,输出整数12345.原创 2016-06-14 10:04:20 · 2050 阅读 · 0 评论 -
实现字符串右移循环
题目描述:请实现字符串右移循环,如“abcdefghi”右移3位变为“defghiabc”.原创 2016-06-14 09:52:59 · 689 阅读 · 0 评论 -
求二叉树叶子节点的个数
题目描述:求二叉树叶子节点的个数分析如下:1.如果root 为NULL,返回0;2.如果只有一个结点,返回1;3.返回左右孩子叶子节点的和;代码如下://#include//#include//using namespace std;//struct Node//{// Node(int val)// :_left(NULL)// ,_原创 2017-07-23 14:34:13 · 2695 阅读 · 1 评论