1. 程式人生 > >相信自己,這書就是有毛病

相信自己,這書就是有毛病

題目源自《資料結構與演算法考研試題精析》 機械工業出版社

C4 演算法設計題 T15


這是我經過修改後的答案:

int Is_Palindrome()
{
	LinkList L = (Lnode *)malloc(sizeof(Lnode));
	if (!L) exit(-1);
	L->next = NULL;
	char ch;
	int n = 0;//字元個數
	Lnode *rear = L;//尾指標,尾插保持原序
	while ((ch = getchar()) != '\n')//換行結束輸入
	{
		Lnode *p = (Lnode *)malloc(sizeof(Lnode));
		if (!p) exit(-1);
		p->next = rear->next;
		rear->next = p;
		rear = p;
		p->data = ch;
		n++;
	}
	//建立鏈式串完成
	char s[100];//字元棧
	int i = 0;
	Lnode *p = L->next;//遍歷指標
	while (i <= n / 2-1)//答案中此處是n/2
{ s[i] = p->data; p = p->next; i++; } if (n % 2 == 1) p = p->next;//若是奇數個,跳過中間節點 while (p) { if (p->data == s[--i]) { p = p->next;}//答案中此處是if(p->data==s[i]) {p=p->next;i--;} else break; } if (!p&&i == 0) return 1; else return 0; }

我的意思是 這答案**能信?首先說方法的問題,題目中明確要求不能使用輔助陣列空間,你用一個數組棧是什麼意思,然後你這答案還是錯的,這本書中有很多地方都是這種細小的地方答案錯誤,你這不是讓讀者浪費時間嗎?奇怪為什麼會有那麼多人推薦這本書。而且我問了一個學長,當年就是用的這本書,沒啥問題。我。。。。  難道是想讓我們多思考思考??

我可*你*的吧!!