编程语言
coodingcc
调试的错误就是编程给你最好的东西,因为在每个错误上面都标志着前进的一步。
展开
-
交错序列
#include<iostream> using namespace std;int main(){ int n; int pre = -1, sum = 0, current; cin >> n; for (int i = 0; i < n; ++i) { cin >> current; if (current != pre)原创 2017-09-01 00:00:50 · 555 阅读 · 0 评论 -
c++ 前、中、后、层次遍历完全二叉树
#include<iostream>#include<vector>using namespace std;//二叉树结点结构 typedef struct BiTNode{ char ch; //结点数据 struct BiTNode *lchild; //左孩子 struct BiTNode *rchild;原创 2017-11-05 17:54:59 · 828 阅读 · 0 评论 -
邻接矩阵存储无向图及遍历
#include "stdafx.h"#include<iostream> #include<string> using namespace std;//下面是循环队列模版 template<class T>class My_queue;template<class T>class Node{private: T data; Node<T> *next;pub原创 2017-11-29 16:41:40 · 1150 阅读 · 0 评论 -
链表的插入、删除
#include<iostream>using namespace std;typedef struct node { int data; struct node *next; node(int data = 0, struct node* next = NULL) : data(data), next(next) {}//构造函数初始化列表} Node, *pNode原创 2017-11-13 16:52:54 · 175 阅读 · 0 评论 -
丑数
#include <iostream>using namespace std;int checkChou(int n){ if (n <= 1) { return true; } if (n % 2 == 0) { return checkChou(n / 2); } if (n % 3 == 0) { ret原创 2017-10-17 11:05:02 · 157 阅读 · 0 评论 -
斐波那契数列的递归算法与非递归算法
一、斐波那契数列 由于斐波纳挈数列是以兔子的繁殖引入的,因此也叫“兔子数列”。它指的是这样一个数列:0,1,1,2,3,5,8,13……从这组数可以很明显看出这样一个规律:从第三个数开始,后边一个数一定是在其之前两个数的和。在数学上,斐波纳挈数列可以以这样的公式表示:F(0) = 0 F(1) = 1 F(n) = F(n-1) + F(n-2),(n>=2) 二、斐波纳挈数列的实现 既然该转载 2017-10-17 10:00:34 · 520 阅读 · 0 评论 -
c++表达式求值(利用数据结构栈)
主要是用到栈**先进后出**的数据结构。在该程序中建有两个栈:一个用于存储运算符OPTR(+-*/#),另一个OPND用于存储操作数或运算结果(5 2 2.5)。基本过程是:(1)首先设置操作数栈为空栈,设置运算符栈以‘#’为栈底元素(其优先级最低)。(2)通过为栈内栈外运算符设置值而比较其优先级(3)依次找到表达式中的所有运算符和操作数,对于操作数直接入栈,运算符则和**运算符栈的栈顶运算符**进行比较优先级原创 2017-10-23 17:16:21 · 2896 阅读 · 1 评论 -
既是质数也是回文数
质数(prime number)又称素数,有无限个。 质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。(注意1不是质数) “回文”是指正读反读都能读通的句子,在自然数中,最小的回文数是0,其次是1,2,3,4,5,6,7,8,9,11,22,33,44,55,66,77,88,99,101,111,121,131,141,151,161,171,181,191,202,212,2原创 2017-10-14 22:20:06 · 3465 阅读 · 0 评论 -
指针数组与数组指针的区别
int* a[4] 指针数组 表示:数组a中的元素都为int型指针 元素表示:*a[i] *(a[i])是一样的,因为[]优先级高于*int (*a)[4] 数组指针 表示:指向数组a的指针 元素表示:(*a)[i]原创 2017-10-12 11:47:03 · 664 阅读 · 1 评论 -
大数阶乘
小数阶乘#include "stdafx.h"#include <iostream>using namespace std;int main(){ unsigned long long n; cin >> n; unsigned long long i, sum = 1; if (n == 0) return 0; else if (n原创 2017-09-27 16:29:06 · 212 阅读 · 0 评论 -
C++中成员函数的重载、覆盖和隐藏的区别
重载(overload): 是函数名相同,参数列表不同,重载只是在类的内部存在。但是不能靠返回值类型来判断。 1.1 相同的范围(在同一个类中) 1.2 函数名同 1.3 参数不同(参数类型和数目有所不同) 1.4 Virtual关键字可有可无覆盖 (override): 也叫重写,子类重新定义父类中相同名称和参数的虚函数,函数特征相同,但是具体实现不同,主要是在继承关系中出现的。 2.1原创 2017-08-30 21:49:55 · 266 阅读 · 0 评论 -
C++二叉树的前序建立与前中后遍历
#include <iostream> using namespace std;struct BiTNode{ char data; struct BiTNode *lchild, *rchild;//左右孩子 };BiTNode*T;void CreateBiTree(BiTNode* &T);void Inorder(BiTNode* &T);void PreO原创 2017-11-15 17:23:14 · 1340 阅读 · 2 评论