共享字尾的鍊錶 (20分)
有一種儲存英文單詞的方法,是把單詞的所有字母串在乙個單鏈表上。為了節省一點空間,如果有兩個單詞有同樣的字尾,就讓它們共享這個字尾。下圖給出了單詞「loading」和「being」的儲存形式。本題要求你找出兩個鍊錶的公共字尾。
ptrtonode suffix( list l1, list l2 );
其中list
結構定義如下:
typedef struct node *ptrtonode;
struct node ;
typedef ptrtonode list; /* 定義單鏈表型別 */
l1
和l2
都是給定的帶頭結點的單鏈表。函式suffix
應返回l1
和l2
的公共字尾的起點位置。
#include #include typedef char elementtype;
typedef struct node *ptrtonode;
struct node ;
typedef ptrtonode list; /* 定義單鏈表型別 */
void readinput( list l1, list l2 ); /* 裁判實現,細節不表 */
void printsublist( ptrtonode startp ); /* 裁判實現,細節不表 */
ptrtonode suffix( list l1, list l2 );
int main()
/* 你的**將被嵌在這裡 */
如圖儲存的鍊錶
ing
ptrtonode suffix( list l1, list l2 )
while(s)
int temp;
p=l1->next;
s=l2->next;
if(len1>len2)
} else
while(p&&p!=s)
if(p)
return p;
return null;
}
PTA6 1 共享字尾的鍊錶
有一種儲存英文單詞的方法,是把單詞的所有字母串在乙個單鏈表上。為了節省一點空間,如果有兩個單詞有同樣的字尾,就讓它們共享這個字尾。下圖給出了單詞 loading 和 being 的儲存形式。本題要求你找出兩個鍊錶的公共字尾。函式介面定義 ptrtonode suffix list l1,list l...
6 1 共享字尾的鍊錶 20分
有一種儲存英文單詞的方法,是把單詞的所有字母串在乙個單鏈表上。為了節省一點空間,如果有兩個單詞有同樣的字尾,就讓它們共享這個字尾。下圖給出了單詞 loading 和 being 的儲存形式。本題要求你找出兩個鍊錶的公共字尾。其中list結構定義如下 typedef struct node ptrto...
6 5 共享字尾的鍊錶 20分
有一種儲存英文單詞的方法,是把單詞的所有字母串在乙個單鏈表上。為了節省一點空間,如果有兩個單詞有同樣的字尾,就讓它們共享這個字尾。下圖給出了單詞 loading 和 being 的儲存形式。本題要求你找出兩個鍊錶的公共字尾。函式介面定義 ptrtonode suffix list l1,list l...