
加强
blank__box
这个作者很懒,什么都没留下…
展开
-
vector
verctor是声明向量容器;例如 verctor v,就是创建了一个名字叫v的向量容器。 vector::iterator是定义向量迭代器例如,vector::iterator it 就可以for(it=v.begin();it!=v.end();it++) coutvector容器类型 vector容器是一个模板类,可以存放任何类型的对象(但必须是同一类对象)。ve转载 2016-09-04 16:18:14 · 426 阅读 · 0 评论 -
链表存储——小练习
多编码来强化编程流程#include #include #include struct list{ char name[20]; struct list * next;};typedef struct list list;list* createlist(){ list *head,*p,*q; head=(list*)malloc(sizeof原创 2016-10-29 21:08:42 · 309 阅读 · 0 评论 -
(C语言)简单明了的 数组模拟栈+ (C++)数组模拟栈
C语言数据结构中的很多东西都能够通过数组和链表来实现,所以熟练数组和链表是很有必要的。栈的特点就是先进后出,如图输出。#include #include #include #include //memset库源using namespace std;struct Stack{ char space[1024]; int top;};void i原创 2016-11-12 11:12:49 · 1850 阅读 · 0 评论 -
队列的基本操作(顺序结构)C/C++
顺序结构的队列,大多情况下对空间的申请比较死,想了个办法:用string形式来存储队列元素,对于new的方式,我也实在想不出够准确的申请方法。C语言式:#include #include using namespace std;struct Queue{ char data[1024]; int front,rear ;};void initQueu原创 2016-11-13 18:31:09 · 1418 阅读 · 0 评论 -
大数的基本运算——大数乘法
大数:即超过了计算机定义类型的范围的数,如126349678984*1321656546446546546546,这种运算的结果太大,超过了基本类型的范围,发生溢出,这样我们就需要运用大数的算法来解决这个问题了。大数乘法:/* * 大数乘法 */#include #include using namespace std;void big_multiply(c原创 2016-11-30 16:46:11 · 5290 阅读 · 4 评论 -
链表的排序——冒泡(交换数据与交换指针)
交换数值排序:void sortList(Node * head, int len) { for(int i=0; i<len-1; i++) { Node * cur = head->next; for(int j=0; j<len-1-i;j++) { if(cur->data > cur->n原创 2016-11-20 23:08:59 · 6768 阅读 · 7 评论 -
计数排序
计数排序,他的主要目的是对整数排序并且会比普通的排序算法性能更好。初始化一个计数数组,大小是输入数组中的最大的数。遍历输入数组,遇到一个数就在计数数组对应的位置上加一。例如:遇到5,就将计数数组第五个位置的数加一。把计数数组直接覆盖到输出数组(节约空间)。/* * 计数排序 * 这种算法只适用于已知所排序元素范围的排序原创 2016-11-22 19:24:42 · 369 阅读 · 0 评论 -
C/C++二维数组(数组指针)——二维数组的传值和二维数组的一维访问
二维数组既可以通过二维访问也可以通过一维访问。对于二维数组的传值,引进了数组指针。#include void foo(int *p,int n)//一维访问{ for(int i=0;i<n;i++) printf("%d ",p[i]); printf("\n");}//因为二维数组的列数必须初始化void func(int (*p)[原创 2016-11-23 17:34:45 · 3297 阅读 · 0 评论 -
冒泡排序——C语言
C语言是比较简单基础的排序方式,排序效率并不高,但是很稳定。通过rand随机生产10个小于20的数来测试排序。/****************** * 冒泡排序 ******************/#include #include #include int main(){ int a[10]; srand((unsigned)time(NULL原创 2016-11-25 17:07:09 · 435 阅读 · 0 评论 -
itoa、atoi strchr
atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中。itoa是广泛应用的非标准C语言和C++语言扩展函数。由于它不是标准C/C++语言函数,所以不能在所有的编译器中使用。但是,大多数的编译器(如Windows上的)通常在/头文件中包含这个函数。功能:将任意类型的数字转换为字符串。在中与之有相反功能的函数是ato原创 2016-12-06 16:29:59 · 409 阅读 · 0 评论 -
图的深度、广度优先搜索——C/C++
转自:http://blog.youkuaiyun.com/llwwlql/article/details/49430171稍作整理/*测试数据:8 9ABCDEFGHA BB DB EE HD HA CC FC GF G*/#include #include #include #define MAX 20using namespace std;int visit[MAX转载 2016-12-19 22:33:59 · 511 阅读 · 0 评论 -
C++强制类型转换之static_cast
//C语言中的一般强转int main(){ float a=5.6; int b=5; a=(float)b; b=(int)a; int x=10,y=3; float c=(float)x/y; cout cout" "}C++中的一般强转i原创 2016-11-06 12:45:47 · 1578 阅读 · 0 评论 -
C语言/C++读取文件信息
C语言的文件读取相对麻烦第一种:先读取文件大小,通过文件大小来定义动态数组作为读取文件信息的存储空间,单个读取字符#include #include #include using namespace std;int main(){ long size; int i=0; FILE *fp; fp=fopen("D:\\Qt\\nicejob.t原创 2016-11-09 22:25:06 · 1954 阅读 · 0 评论 -
C++map和set的简单理解和使用案例
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据 处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。map内部自建一颗红黑树(一 种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识到有序的好处。来自:点击打开链原创 2017-10-16 19:29:40 · 1817 阅读 · 0 评论 -
C++中string的运用
#include #include #include using namespace std;int main(){// system("color B1");//调色 system("title string"); string list,list1; cin>>list;//qwe cin>>list1;//asd原创 2016-11-04 20:59:39 · 447 阅读 · 0 评论 -
namespace 命名空间
对于namespace 的使用一般只在比较大的项目开发中。。能为各个不同程序员的代码共同实施提供极大的方便,因为不同程序员员可能使用了相同的变量,namespace便能够避免这种错误的出现。#include using namespace std;int v=5;//强龙不压地头蛇int main1(){ int v=55; cout << v <<原创 2016-11-07 14:27:54 · 371 阅读 · 0 评论 -
C++ 引用 (交换两个数的值)
C++中引用能够将很多问题在同级上解决,不会开辟新的空间。在C中是没有引用这个定义的,这也是C++中的一个特色。通过一个swap函数来简单的了解引用。/************************** * 通过引用交换两个数的值 *(类型)&(变量名)=(所引用的变量) * * 引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。原创 2016-11-09 12:10:37 · 8991 阅读 · 0 评论 -
struct和typedef struct
struct和typedef struct分三块来讲述: 1 首先://注意在C和C++里不同 在C中定义一个结构体类型要用typedef: typedef struct Student { int a; }Stu; 于是在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student s转载 2016-09-24 10:16:59 · 312 阅读 · 0 评论 -
C语言中的 . 和 -> 的区别
->是指针指向其成员的运算符.是结构体的成员运算符如:struct A{int a;int b;};A *point = malloc(sizeof(struct A));point->a = 1;A object;object.a = 1;h->ave等同于(*h).ave原创 2016-09-24 14:18:18 · 483 阅读 · 0 评论 -
顺序栈
转自http://blog.sina.com.cn/s/blog_1513d729e0102wem6.html顺序栈的实现(利用数组实现)转载▼ 顺序栈的实现(数组实现、C语言) 在数据结转载 2016-10-21 15:58:06 · 385 阅读 · 0 评论 -
sort 与 qsort
C语言有自有的qsort函数。功 能: 使用快速排序例程进行排序头文件:stdlib.h原型: void qsort(void *base,int nelem,int width,int (*fcmp)(const void *,const void *));参数:1 待排序数组首地址2 数组中待排序元素数量3 各元素的占用空间大小4转载 2016-11-02 21:39:40 · 306 阅读 · 0 评论 -
rand()&srand()
一、rand()函数名: rand功 能: 随机数发生器用 法: int rand(void);所在头文件: stdlib.h函数说明 :rand()的内部实现是用线性同余法做的,它不是真的随机数,因其周期特别长,故在一定的范围里可看成是随机的。 rand()返回一随机数值的范围在0至RAND_MAX 间。RAND_MAX的范围最转载 2016-11-04 19:29:44 · 878 阅读 · 0 评论 -
最大公约数(辗转相除法和更相减损法)
辗转相除法的a%b运算性能较低更相减损法,当两数相差很大时运算量也会加大原创 2016-11-05 11:51:11 · 766 阅读 · 0 评论 -
快速排序
//快速排序相比于冒泡、插入排序等有更大的优势,所以也是必须熟练掌握的。#include void quick_sort(int s[], int l, int r){ if (l < r)//如果l==r就直接退出,不用排序 { //Swap(s[l], s[(l + r) / 2]); //将中间的这个数和第一个数交换 参见注1 i原创 2016-11-05 22:22:35 · 305 阅读 · 0 评论 -
动态数组申请————简单版
来自http://blog.sina.com.cn/s/blog_5c50c7e20100d3gj.html近来编写几个程序,很多都用到了数组。但是对于数组的大小却是没有固定的,也就是说可以更改数组大小,其大小是可以变化的。并不像初学时的那样,告诉你一个范围,你就必须取最大值以满足要求。那样可能就会浪费很多不必要的内存单元!那么到底应该怎样定义一个动态数组列? 在数转载 2016-10-25 18:33:09 · 1067 阅读 · 0 评论 -
结构体排序
//简单sort排序,是结构体哦//#include #include #include struct Time{int a;int b;};//刚忘记在这添上分号啦//bool compare(Time A, Time B){return A.b}using namespace std;int main(int argc, char *ar原创 2016-11-02 22:44:10 · 312 阅读 · 0 评论 -
namespace 命名空间——多个的相互联系及自动合并;协作开发
#include using namespace std;namespace Space{ int x;}namespace Space//可以看出与上方重名了{ int y;}int main(){ using namespace Space;//对于上方的两个重名的Space便会自动的合并 x=10; y=20; cout原创 2016-11-07 19:21:30 · 2099 阅读 · 0 评论 -
C++中的new——delete
//对于动态申请#include #include #include using namespace std;int main(){ char *p=new char[40];//开辟一个数组 strcpy(p,"china"); cout<<p<<endl; int *pi=new int[5]; //int *pi=new int[5]原创 2016-11-06 11:38:46 · 277 阅读 · 0 评论 -
【C语言】任意进制之间的转换(支持小数部分)
转自http://www.cnblogs.com/kongtiao/archive/2012/04/20/2459523.html整理一下,免得自己忘记,也希望能帮到有需要的人。————————————————————————我是一条华丽的分割线———————————————————————— 全局变量:双精度浮点数p、字符数组out。 当其他进制转转载 2016-10-18 16:48:35 · 6501 阅读 · 1 评论 -
二叉树的简单实现(3种遍历)
所谓遍历,即按照某种规律或顺序访问树中的全部节点,且每个节点只访问一次。在访问节点信息时输出节点中的信息。标准二叉树包括左、右、根三个部分,则我们可以通过递归的方法来访问输中的信息。二叉树的遍历主要分为:1、先序遍历:根——左——右 2、中序遍历:左——根——右 3、后续遍历:左——右——根太多的文字信息不如直接上代码理解,所以直原创 2016-11-08 22:39:21 · 848 阅读 · 0 评论 -
C++ 对于输出小数的位数控制+C++对集合的操作(交、并、差)
//输入n表示n组数据//输入m表示需要小数点后的多少位#include #include using namespace std;int main(){ double a,b; int n,m; cin>>n; while(n--) { cin>>a>>b; cin>>m; cout <<s原创 2016-11-15 17:57:42 · 578 阅读 · 0 评论