资源简介
包含数据结构上机课程全部上机内容,如栈、队列、排序、搜索等各类基本数据结构的建立和功能实现
代码片段和文件信息
#include
#include
#include
using namespace std;
//堆存储表示************************************************************************************
#define TRUE 1
#define OK 1
#define FALSE 0
#define ERROR 0
#define OVERFLOW -2
#define MAXSTRLEN 255
typedef unsigned char SString[MAXSTRLEN+1];
typedef int Status;
typedef struct {
char *ch;
int length;
}HString;
Status StrInsert(HString &S int pos HString T){
//在串S的第pos个字符之前插入串T
if (pos<1||pos>S.length+1) return ERROR;
if(T.length){
if(!(S.ch=(char *)realloc(S.ch(S.length+T.length)*sizeof(char))))
exit(OVERFLOW);
for (int i=S.length-1;i>=pos-1;--i)
S.ch[i+T.length]=S.ch[i];
for (int j=pos-1;j<=pos+T.length-2;j++)
S.ch[j]=T.ch[j-pos+1];
S.length+=T.length;
}
return OK;
}//StrInsert
Status StrAssign(HString &Tchar *chars){
//生成值为chars的串T
//if(T.ch) free(T.ch);
int i;char *c;
for(i=0c=chars;*c;++i++c);//求chars长度i
if(!i) {T.ch=NULL; T.length=0;}
else {
if(!(T.ch=(char *)malloc(i*sizeof(char))))
exit (OVERFLOW);
for(int j=0;j<=i-1;j++){
T.ch[j]=chars[j];
}
T.length=i;
}
return OK;
}//StrAssign
int StrLength(HString S) {
//求串长度
return S.length;
}//StrLength
int StrCompare(HString S HString T){
//比较串S和T
for (int i=0;i if(S.ch[i]!=T.ch[i]) return S.ch[i]-T.ch[i];
return S.length-T.length;
}//StrCompare
Status ClearString(HString &S){
//清空串S
if(S.ch) {free(S.ch); S.ch=NULL;}
S.length=0;
return OK;
}//ClearString
//
Status Concat(HString &THString S1HString S2) {
//连接串S1和S2
//if(T.ch) free(T.ch);
if(!(T.ch=(char *)malloc((S1.length+S2.length)*sizeof(char))))
exit(OVERFLOW);
for(int i=0;i T.ch[i]=S1.ch[i];
T.length=S1.length+S2.length;
for(int j=S1.length;j T.ch[j]=S2.ch[j-S1.length];
return OK;
}//Concat
Status SubString(HString &SubHString Sint posint len){
//返回串S中从pos位置起长度为len的子串
if (pos<1||pos>S.length||len<0||len>S.length-pos+1)
return ERROR;
//if(Sub.ch) free(Sub.ch);
if(!len){Sub.ch=NULL; Sub.length=0;}
else{
Sub.ch=(char *)malloc(len*sizeof(char));
for(int i=0;i<=len-1;i++)
Sub.ch[i]=S.ch[pos+i-1];
Sub.length=len;
}
return OK;
}//SubString
void printStr(HString T)
{
int i;
for (i=0;i cout << T.ch[i];
cout< }
int index(HString aHString bint pos){
int i=posj=1;
while(i<=a.length&&j<=b.length){
if(a.ch[i]==b.ch[j]){++i++j;}
else {i=i-j+2;j=1;}
}
if(j>b.length) return i-b.length;
else return 0;
}
void get_next(HString tint next[]){
int i =1;next[1]=0;int j=0;
while (i if(j==0||t.ch[i]==t.ch[j])
{
++i;++j;next[i]=j;
}
else j=next[j];
}
}
int Index_KMP(HString sHString tint posint next[])
{
int i=posj=1;
get_next(tnext);
while(i<=s.length&&j<=t.length){
if(j==0||s.ch[i]==t.ch[j]){
++i;++j;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-12-02 22:04 数据结构代码\
目录 0 2018-12-02 22:04 数据结构代码\串\
目录 0 2018-12-17 16:53 数据结构代码\串\Debug\
目录 0 2018-12-02 22:04 数据结构代码\串\串\
目录 0 2018-12-02 22:04 数据结构代码\串\串\Debug\
文件 74752 2017-10-26 09:53 数据结构代码\串\串\Debug\vc60.idb
文件 110592 2017-10-26 09:52 数据结构代码\串\串\Debug\vc60.pdb
文件 553016 2017-10-26 09:52 数据结构代码\串\串\Debug\串.exe
文件 792756 2017-10-26 09:52 数据结构代码\串\串\Debug\串.ilk
文件 266634 2017-10-26 09:52 数据结构代码\串\串\Debug\串.obj
文件 2001512 2017-10-26 08:24 数据结构代码\串\串\Debug\串.pch
文件 1106944 2017-10-26 09:52 数据结构代码\串\串\Debug\串.pdb
文件 4527 2017-10-26 09:52 数据结构代码\串\串\串.cpp
文件 4598 2017-10-26 09:53 数据结构代码\串\串\串.dsp
文件 1333 2017-10-26 09:52 数据结构代码\串\串\串.plg
文件 532 2017-10-26 08:22 数据结构代码\串\串.dsw
文件 33792 2017-10-26 09:53 数据结构代码\串\串.ncb
文件 48640 2017-10-26 09:53 数据结构代码\串\串.opt
目录 0 2018-12-02 22:04 数据结构代码\二叉树\
目录 0 2018-12-17 16:53 数据结构代码\二叉树\Debug\
目录 0 2018-12-02 22:04 数据结构代码\二叉树\二叉树\
目录 0 2018-12-02 22:04 数据结构代码\二叉树\二叉树\Debug\
文件 74752 2017-11-09 08:58 数据结构代码\二叉树\二叉树\Debug\vc60.idb
文件 110592 2017-11-09 08:57 数据结构代码\二叉树\二叉树\Debug\vc60.pdb
文件 540740 2017-11-09 08:57 数据结构代码\二叉树\二叉树\Debug\二叉树.exe
文件 778828 2017-11-09 08:57 数据结构代码\二叉树\二叉树\Debug\二叉树.ilk
文件 186638 2017-11-09 08:57 数据结构代码\二叉树\二叉树\Debug\二叉树.obj
文件 2006964 2017-11-09 08:34 数据结构代码\二叉树\二叉树\Debug\二叉树.pch
文件 1090560 2017-11-09 08:57 数据结构代码\二叉树\二叉树\Debug\二叉树.pdb
文件 2440 2017-11-09 08:57 数据结构代码\二叉树\二叉树\二叉树.cpp
文件 4646 2017-11-09 08:58 数据结构代码\二叉树\二叉树\二叉树.dsp
............此处省略247个文件信息
- 上一篇:EAS测试许可全套license
- 下一篇:site-1.8.22.zip
相关资源
- 数据结构年终考题范围和答案 耿国华
- 数据结构 朱战力 习题解答 数据结构
- 数据结构课程设计 6 1 彩票系统
- 教学计划编制系统
- 大数(链表、数组)实现
- 自己写的航空订票系统c 版--数据结构
- 数据结构实验魔王语言
- 航空订票系统_数据结构课程设计
- 多项式求和(数据结构C 版)
- 尚观培训linux董亮老师关于数据结构的
- 数据结构 知识点总结
- 华南理工大学数据结构复习提纲二
- 华南理工大学数据结构复习提纲一
- 数据结构用C 写的停车场系统源代码
- 数据结构(河北科技大学)
- 数据结构考前习题 清华大学出版社
- 数据结构课件(北邮)
- 数据结构实验 基于栈的表达式求值
- 数据结构课程设计——图书管理系统
- 成绩管理系统(数据结构)
- 数据结构-最小通信网问题
- 数据结构课程设计同学通讯录系统
- 数据结构课程设计 公园导游图
- 数据结构殷人昆版的课后答案
- 2006年湖北工业大学409数据结构试题
- 数据结构实验-魔王语言-源码加实验报
- 简单计算器的实现(数据结构)
- 简单计算器的实现(数据结构 修正版
- Fundamentals of Data Structure in C
- 北京邮电大学数据结构历年考研真题
评论
共有 条评论