データ構造—シリアル(C/C++版)
1492 ワード
本文はCSDNブロガーcoder_gxdオリジナル
転載は以下のことを明記してください.https://blog.csdn.net/coder_gxd/article/details/79854201
本文はデータ構造の中で列の常用アルゴリズム(C/C++版)を紹介して、各位の学友の討論の指摘を歓迎します
転載は以下のことを明記してください.https://blog.csdn.net/coder_gxd/article/details/79854201
本文はデータ構造の中で列の常用アルゴリズム(C/C++版)を紹介して、各位の学友の討論の指摘を歓迎します
#include // malloc(),free()
#define maxsize 100
//
typedef struct {
char str[maxsize+1];//maxsize ,maxsize+1 '\0';
int length; //
}Str0;
// , ;
typedef struct {
char *ch;// ;
int length; //
}Str;
// , O(ch.length)
// , 1, 0;
int strassign(Str &str,char *ch){//c , c str;
if(str.ch!=NULL){// str , ;
free(str.ch);
}
int len=0;char *c=ch;
while(*c){++len;++c;}// ch ;
if(len==0){// ch ,
str.ch=NULL;
str.length=0;
return 1;
}
else{// ch
str.ch=(char *)malloc(sizeof(char)*(len+1));// len+1 '\0';
if(str.ch==NULL){// , 0;
return 0;
}
else{//
c=ch;
for(int i=0;i<=len;i++,++c){// ch str;
str.ch[i]=*c;
}
str.length=len;// ;
return 1;
}
}
}
// , O(min(s1.length,s2.length));
// , s1>s2, ; s1