国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 數據結構里面pnext與next有什么區別?

數據結構里面pnext與next有什么區別?

來源:千鋒教育
發布人:xqq
時間: 2023-10-11 07:15:53 1696979753

一、數據結構里面pnext與next的區別

p 是一個指向某類型結構的指針;

p->next 是 p 所指向的結構的 next 成員;

p = p->next 是把?p->next 的值賦給 p。

如果這兩句語句中的 p 變量是同一個 p 的話,那么?p->next 的數據類型一定是一個指向結構的指針,而且所指向的結構的類型與?p->next 所在結構的類型相同。

#include ? //鏈表的結構及其指針 struct?stru_num { ????int?num; ????struct?stru_num?*next;//結構本身不能含有同類型的結構,但可以含有指向同類型的指針 }?*p; ? int?main(void) { ???struct?stru_num?list[10];//鏈表 ????int?index; ????? ????p?=?list;//初始化指針 ????for(index?=?0;index?next?=?p?+?1; ????????p->num?=?index; ????????p?=?p->next;//與?p++?效果等同 ????} ????(p?–?1)->next?=?NULL;//末元素指向空指針, ????? ????//輸入除首元素的其他元素 ????p?=?list; ????for(index?=?0;index?printf(“%d”,(p[index].next)->num); ????? ????return?0; }

延伸閱讀:

二、KMP算法

相比BF算法的改進:每當一趟匹配過程中出現字符比較不等時,無需回溯i指針(即無需將i指針完全退回至i-j+1),而是利用已經得到的“部分匹配”的結果將模式向右“滑動”盡可能遠的一段距離后,繼續進行比較。

需要解決的問題:當主串中的第i個字符與模式中第j個字符比較不相等時,主串中第i個字符(i指針不回溯)應與模式中哪個字符再比較?—-假設從主串中第i個字符與模式中的第k個字符再進行比較

它是則呢樣來消除回溯的呢?就是因為它提取并運用了加速匹配的信息!

  這種信息就是對于每模式串 t 的每個元素 t j,都存在一個實數 k ,使得模式串 t 開頭的 k 個字符(t 0 t 1…t k-1)依次與 t j 前面的 k(t j-k t j-k+1…t j-1,這里名列前茅個字符 t j-k 非常多從 t 1 開始,所以 k < j)個字符相同。如果這樣的 k 有多個,則取最大的一個。模式串 t 中每個位置 j 的字符都有這種信息,采用 next 數組表示,即 next[ j ]=MAX{ k }。

聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT