- 博客(42)
- 资源 (1)
- 收藏
- 关注
原创 线性表的顺序存储实现
最近准备考研了,复习到数据结构这块,因为本人对数据结构和算法很有兴趣,准备把数据结构书上的代码都写一遍。以后会陆续上传博客。#include<stdio.h>#include<stdlib.h>#define TURE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define O
2017-05-28 22:52:03
417
原创 关于malloc,realloc和free函数的讲解
最近由于准备考研了,在看到数据结构这块的时候。想动手把书上的代码都实现了。但是由于好长时间没有后写过C的代码,对这几个函数有点疑惑,于是整理了资料。 1. malloc详解 【以下俩点是以前没有注意到的地方】 1) 因为mallo函数返回值是void类型,所以我们必须强制转换指针类型 int* p = (int *)malloc
2017-05-28 22:46:14
1882
原创 hbase启动不了,端口占用问题
hbase启动不了,端口占用问题好长时间没有用hbase 了,一直在hbase shell 出现错误。执行start-hbase.sh 出现如下信息 :大概意思就是2181端口被占用,无法启动ZK 出现如下错误: 在base shell 中 执行list ,出现如下错误提示(在这之前我没有主要到hbase启动时候的问题,就是第一步的问题): 3.netstat -apn | grep 2181
2017-05-25 16:05:15
2639
转载 Html中CSS之去除li前面的小黑点,和ul、LI部分属性方法
对于很多人用div来做网站时,总会用到,但在显示效果时前面总是会有一个小黑点,这个令很多人头痛,但又找不到要源,其它我们可以用以下方法来清除。 1、在CSS中写入代码。找到相关性的CSS,在。.li和.ul下写入list-sytle:none;当然有的会这样来写list-style-type:none, 这种写法特别是在一些CMS中最常见。 2、在相关的页面找到head部分写入下面的代码
2016-12-09 10:11:54
1017
原创 Java控制语句 标签的用法
标签是后面跟有冒号的标识符,就像下面这样: label1 : break和continue关键字只能中断当前循环,但若与标签一起使用,他们就会中断循坏,直到标签所在位置。label1 :outer-iteration{ inner-iteration{ //... break; //(1) //... continue; //(2) //..
2016-09-26 16:59:05
261
原创 插入排序
插入排序适合少量元素的排序#include<iostream>using namespace std;int main(){ //请输入要排序的元素的数目 int num; cin>>num; //用数组a来保存要排序的元素 int a[num]; //请输入要排序的数 for(int i=0;i<num;i++) { int b; cin>>b
2016-09-25 11:01:26
190
转载 VC++的Unicode编程
一、什么是Unicode先从ASCII说起,ASCII是用来表示英文字符的一种编码规范。每个ASCII字符占用1个字节,因此,ASCII编码可以表示的最大字符数是255(00H―FFH)。其实,英文字符并没有那么多,一般只用前128个(00H―7FH,最高位为0),其中包括了控制字符、数字、大小写字母和其它一些符号。而最高位为1的另128个字符(80H―FFH)被称为“扩展ASCII”,一
2016-04-26 19:03:26
251
转载 VC++深入详解第一章代码
#include #include #include #include LRESULT CALLBACK WinSunProc( HWND hwnd, // handle to window 窗口句柄
2016-04-23 11:11:59
842
1
转载 ++ function、bind以及lamda表达式
本文是C++0x系列的第四篇,主要是内容是C++0x中新增的lambda表达式, function对象和bind机制。之所以把这三块放在一起讲,是因为这三块之间有着非常密切的关系,通过对比学习,加深对这部分内容的理解。在开始之间,首先要讲一个概念,closure(闭包),这个概念是理解lambda的基础。下面我们来看看wikipedia上对于计算机领域的closure的定义:
2016-04-03 10:56:45
258
原创 c++ primer —— 练习 14.2
//一个书店的应用程序#include <string>#include <iostream>using namespace std;class Sales_data { friend std::istream& operator>>(std::istream&, Sales_data&); // input friend std::ostream& operat
2016-03-30 21:30:36
395
转载 Boost库 对时间和日期的处理 date_timer库
/*Boost 对时间和日期的处理 提供了timer和data_time 库*///有关timer库提供了简易的度量时间和进度显示的功能可以用于性能测试等需要计时的任务/*timer 的三个组件 计时器类timer progress_timer和进度指示类progress_displaytimer 可测量时间的流逝,提供毫秒级的计时精确度#include#includeusi
2016-03-27 10:55:34
569
转载 数值极限类 大笑一般来说,数值类型的极值是一个与平台相关的特性。c++标准程序库通过template numeric_limits提供这些极值,取代传统C语言所采用的预处numeric_limits
一般来说,数值类型的极值是一个与平台相关的特性。c++标准程序库通过template numeric_limits提供这些极值,取代传统C语言所采用的预处理常数。你仍然可以使用后者,其中整数常数定义于和,浮点常数定义于和,新的极值概念有两个优点,一是提供了更好的类型安全性,二是程序员可借此写出一些template以核定这些极值。下面是numeric_limits定义下面是参
2016-03-23 18:17:00
456
转载 assert()函数
assert()函数用法总结 assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终
2016-03-20 20:02:34
269
转载 详解C/C++中预处理器
C/C++编译系统编译程序的过程为预处理、编译、链接。预处理器是在程序源文件被编译之前根据预处理指令对程序源文件进行处理的程序。预处理器指令以#号开头标识,末尾不包含分号。预处理命令不是C/C++语言本身的组成部分,不能直接对它们进行编译和链接。C/C++语言的一个重要功能是可以使用预处理指令和具有预处理的功能。C/C++提供的预处理功能主要有文件包含、宏替换、条件编译等。 1、文件包含
2016-01-30 10:51:23
416
转载 main();处理命令行选项
版权声明:本文为博主原创文章,未经博主允许不得转载。Main():处理命令行选项int main(int argc,char *argv[])是c++的里面的main()函数的一种扩展原型 其中int argc 表示的是运行程序时命令行里所带参数的个数+1 (因为包括了该程序名) ,如果不带参数的话那就默认是1 char *argv[]参数是字符数组的
2015-12-22 12:58:13
479
1
转载 sleep()函数
关于sleep()函数在windows系统和linux系统下是两个不同的函数,差别较大,但功能是相同的,都是将进程挂起一段时间。 windows系统下函数名为Sleep(),其函数原型为:#include <windows.h> 函数使用头文件void Sleep(DWORD dwMilliseconds); 参数为毫秒 参考代码:#include <windows.h> //win头文
2015-12-09 15:41:40
2161
转载 fflush(stdin)和fflush(stdout)
fflush(stdin)比较容易理解,即清理标准输入流,把多余的仍未被保存的数据丢掉。比如,下面这个小程序:void main(){ int a; char str[10]; cin>>a; cout cin>>str; cout}
2015-12-08 12:16:36
650
原创 快速排序
#includeusing namespace std;#define MAXSIZE 1000typedef int keytype;typedef struct{ keytype key;}redtype;typedef struct{ redtype r[MAXSIZE+1]; int length;}sqlist;int Partitio
2015-12-03 09:16:36
484
转载 数据结构——二叉树 前序、中序、后序、层次遍历及非递归实现 查找、统计个数、比较、求深度的递归实现
一、基本概念每个结点最多有两棵子树,左子树和右子树,次序不可以颠倒。性质:1、非空二叉树的第n层上至多有2^(n-1)个元素。2、深度为h的二叉树至多有2^h-1个结点。满二叉树:所有终端都在同一层次,且非终端结点的度数为2。在满二叉树中若其深度为h,则其所包含的结点数必为2^h-1。完全二叉树:除了最大的层次即成为一颗满
2015-11-29 19:19:35
482
原创 单链队列——队列的链式存储结构
#include#includeusing namespace std;#define TURE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW -2typedef int Status;typedef struct QNode{
2015-11-28 20:26:18
614
1
原创 栈的顺序存储表示
#include#includeusing namespace std;#define TURE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW -2#define STACK_INIT_SIZE 100#define STACKINCRE
2015-11-28 19:40:36
451
转载 #ifdef #else #endif #fi #ifndef 的用法
预处理就是在进行编译的第一遍词法扫描和语法分析之前所作的工作。说白了,就是对源文件进行编译前,先对预处理部分进行处理,然后对处理后的代码进行编译。这样做的好处是,经过处理后的代码,将会变的很精短。 关于预处理命令中的文件包含(#include),宏定义(#define),书上已经有了详细的说明,在这里就不详述了。这里主要是对条件编译(#ifdef,#else,#endif,#if等)进行说
2015-11-25 12:14:29
237
转载 第五章 数组的数组的顺序存储表示和实现
代码能够实现但是会出现非法访问地址。// Array.cpp : Defines the entry point for the console application.//稀疏矩阵三元组顺序表示的基本操作的实现并完成快速转置//---------------------------------------------------//----------------数组的顺序存储表
2015-11-22 21:01:14
1014
1
转载 运算符总结
C++部分操作符 &&、|| 其前后各接一逻辑值,返回两逻辑值之“与”运算逻辑值和“或”运算逻辑值。如:'A'&&34.3f的返回值是逻辑真,为1;34&&0的返回值是逻辑假,为0。0||'B'的返回值是逻辑真,为 1;0||0的返回值是逻辑假,为0。 &|^ 其前后各接一数字,返回两数字之“与”运算、“或”运算、“异或”运算值。如前面所说,先将两侧的数字转成二进制数,然后对各
2015-11-21 21:08:18
598
转载 setiosflags() 的好处多多
本课讲:setiosflags( ios::fixed ),其头文件为:include.注:在遇到要计算浮点数且希望能控制其输出、精度、小数点后的位数等时,那么这个时候,用setiosflags( ios::fixed )来控制是再好不过了!且看下面程序:#include#includeusing namespace std;int main() { cout
2015-11-18 23:54:07
329
转载 stdarg.h详解
读Linux内核中的vsprintf函数的时候遇到了C语言的可变参数调用,查了挺多资料还是这篇比较详细,而且自己验证了下,确实如此(一)写一个简单的可变参数的C函数 下面我们来探讨如何写一个简单的可变参数的C函数.写可变参数的 C函数要在程序中用到以下这些宏: void va_start( va_list arg_ptr, prev_param ); type va_arg(
2015-11-16 22:13:50
572
转载 串的堆分配存储表示
串的堆分配存储表示 方法仍然以一组地址连续的存储单元表示,但它们的存储空间是在程序执行过程中动态分配的。堆串类型定义typedef strcut HString{ char *ch; //若是非空串,则按串长分配存储区,否则ch为NULL int length; //串的长度}HString;堆串常用基本操作的算法描述串赋值int StrAssi
2015-11-15 12:45:00
875
转载 串的定长数据存储表示
//串的定长顺序存储表示#define MAXSTRLEN 40 // 用户可在255以内定义最大串长(1个字节)typedef char SString[MAXSTRLEN+1]; // 0号单元存放串的长度//串采用定长顺序存储结构的基本操作(14个)// SString是数组,故不需引用类型。此基本操作包括算法4.2,4.3,4.5Status StrAssign
2015-11-15 12:33:53
673
原创 在c++中怎么实现把char实现int形输出
#include#define MAXSTRLEN 255#include#define Status inttypedef unsigned char SString[MAXSTRLEN+1];using namespace std;int main(){ SString ma; string str="mazhuangzhangwanqi";
2015-11-14 19:20:29
630
转载 char 与 unsigned char的本质区别
在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别 首先在内存中,char与unsigned char没有什么不同,都是一个字节,唯一的区别是,char的最高位为符号位,因此char能表示-128~127, unsigned char没有符号位,因此能表示0~255,这个好理解,8个bit,最多256种情况,
2015-11-14 18:42:37
364
转载 关于srand(time(0)) rand() 的解释
算法计算机没有办法产生真正的随机数的,是用算法模拟,所以你只调用rand,每次出来的东西是一样的。设置一个种子后,根据种子的不同,就可以产生不同的数了。而怎么保证种子的不同呢?最简单的办法当然是用永远在向前的时间。srand(time(0)) ;//先设置种子rand();//然后产生随机数Srand是种下随机种子数,你每回种下的种子不一样,用Rand得到的
2015-11-08 21:45:33
369
转载 数据结构之线性表(单链表)
注意:这篇博客是我转别人的,当中有点小缺陷;在"while(p&&j1. 线性链表 线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。这些数据元素可以存在内存未被占用的任意位置。 它包括两个域:其中存储数据元素信息的域称为数据域;存储直接后继存储位置的域称为指针域。指针域中存储的信息称为指
2015-11-08 20:43:48
576
转载 线性表的动态分配顺序存储结构
线性表定义:是最常用的,也是最简单的数据结构,是长度为n个数据元素的有序的序列。含有大量记录的线性表叫文件记录:稍微复杂的线性表里,数据元素为若干个数据项组成,这时把一个数据元素叫记录结构特点:在非空有限的条件下,存在唯一的一个表头结点,唯一的一个表尾结点,除去第一个元素之外,每个数据元素都只有一个前驱,除去最后一个元素之外,每一个数据元素都只有一个
2015-11-05 20:40:27
9225
转载 exit()函数和ateixt()函数的用法
一、exit()函数函数声明:void exit(int state);exit()函数用于在程序运行的过程中随时结束程序,exit的参数state是返回给操作系统,返回0表示程序正常结束,非0表示程序非正常结束。main函数结束时也会隐式地调用exit函数。exit函数运行时首先会执行由atexit()函数登记的函数,然后会做一些自身的清理工作,同时刷新所有输出流、关闭所有打开的流并
2015-11-05 15:58:02
1000
原创 strchr()函数
函数原型:extern char *strchr(char *str,char character)参数说明:str为一个字符串的指针,character为一个待查找字符。所在库名:#include 函数功能:从字符串str中寻找字符character第一次出现的位置。返回说明:返回指向第一次出现字符character位置的指针,如果没找到则返回NULL。其它说明:还有
2015-11-04 23:44:22
1562
原创 A+B for Input-Output Practice (VIII)
Problem DescriptionYour task is to calculate the sum of some integers. InputInput contains an integer N in the first line, and then N lines follow. Each line starts with a integer
2015-10-27 23:46:53
225
原创 南阳理工 括号配对题解
括号配对问题时间限制:3000 ms | 内存限制:65535 KB难度:3描述现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0输出每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出NoNoYes
2015-10-27 13:02:05
305
转载 [标准C/C++基础]用指针指向string类的对象
#include #include using namespace std; int main(void) { string s = "hello"; //定义一个char类型指针,把string s的首元素地址赋给pt,则pt指向字符串s. char *pt = &s[0]; cout return 0; }
2015-10-26 15:31:25
1442
转载 快速排序 qsort()函数
C语言标准库函数qsort那点小事qsort包含在头文件中,此函数根据你给的比较条件进行快速排序,通过指针移动实现排序。排序之后的结果仍然放在原数组中。使用qsort函数必须自己写一个比较函数。函数原型:void qsort ( void * base, size_t num, size_t size, int ( * comparator ) ( const vo
2015-10-14 12:10:52
371
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人