数据结构问题,用C++语言做的,题目如下:(在线等)

2025-12-17 12:24:29
推荐回答(2个)
回答1:

struct po{char data;po * nextp;};
bool IsWord(char c);
bool IsNumber(char c);
void sd(po* pointer,po* word, po* number,po* other){ //p是原链表指针,其他是新链表指针
po * p = pointer;//拷贝原链表指针
po * wordlast = word;//用来记录链表最后一项
po * numberlast = number;
po * otherlast = other;
while(p!=NULL){
if(IsWord( p->data )){wordlast->nextp = p;}
else if(IsNumber( p ->data )){numberlast->nextp = p;}
else{otherlast->nextp = p;}
p = p->nextp;
}
}
不懂问我

回答2:

我明白你的题目了,
不开新的空间,只利用原链表的空间,分割成三个链表出来,这三个链表分别保存三种字符。

那可难了。。 至少半个小时内我想不出来。