0001 template <typename T> //在无序列表区间(h,t)内,找到等于e的最靠前者:h < t 0002 LNP<T> List<T>::find(LNP<T> h, const T& e, LNP<T> t) const { 0003 T bak = t->data; t->data = e; //预置哨兵 0004 while (e != (h = h->succ)->data); //自前向后,逐个比对 0005 t->data = bak; return h == t ? nullptr : h; //哨兵复原,返回终止位置 0006 } //find:O(n)