(1)單向鍊錶
//(2)鍊錶類模板單向鍊錶
#include#include
class cnode //
節點類};
class clist //
鍊錶類 cnode* movetrail(cnode *pnode)//
移動到尾節點
return
ptmp;
}void addnode(cnode *pnode)//
新增節點
else
m_nodesum++;
}void passlist()//
遍歷鍊錶
}cout
<
}~clist()//
定義鍊錶的析構函式
m_nodesum=0
; pdelete=null;
ptmp=null;
}m_pheader=null;
}private
: cnode *m_pheader;
intm_nodesum;
};void
main()
list.passlist();
}
//本文**:鍊錶類模板
#include#include
class cnode //
節點類1
};class cnet//
節點類2
};template
class clist //
鍊錶類 t* movetrail(t*pnode)//
移動到尾節點
return
ptmp;
}void addnode(t*pnode)//
新增節點
else
m_nodesum++;
}void passlist()//
遍歷鍊錶
}cout
<
}~clist()//
定義鍊錶的析構函式
m_nodesum=0
; pdelete=null;
ptmp=null;
}m_pheader=null;
}private
: t *m_pheader;
intm_nodesum;
};void
main()
list1.passlist();
clist
list2;
for(int j=5;j<10;j++)
list2.passlist();
}
二:#include
#include
using namespace std;
template
class node //節點
;template
class list
;template
list::list()
template
void list::create()
p->next=null;
}template
bool list::empty() const
template
void list::insertfirst(const t e)
template
void list::insertlast(const t e)
p->next=q;
q->next=null;
}template
void list::deletefirst()
template
void list::deletelast()
template
void list::display() const //顯示鍊錶
}template
node* list::getnode(int i) //返回第i個節點
return p;
}template
void list:: reverse() //鍊錶逆置
int i,j;
i=1;
j=count;
while(i<=count/2 && j>=count/2)
}template
bool list::find(const t e) //在鍊錶中查詢某個值
p=p->next;
}return flag;
}template
list::~list()
}int main()
{listilist;
ilist.create(); //建立鍊錶
ilist.display(); //輸出鍊錶
cout<
c 實現單鏈表
include include using namespace std typedef int datatype struct linknode 建立乙個節點 class slist void swap slist s slist const slist s head null tail null ...
單鏈表(C實現)
ifndef list h define list h typedef struct node node typedef struct list list initlist int insertlist list l,void data,int size node findnodebykey lis...
單鏈表C 實現
單鏈表c 實現 單鏈表c 實現 include 節點定義 templateclass listnode 鍊錶定義 template class list 建構函式 list 析構函式 void makeempty 鍊錶置空 int length const 求鍊錶長度 listnode find t...