⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 list.h

📁 创建顺序表: 输出顺序表:顺序输出各个元素; 插入顺序表:在指定位置处插入元素; 删除顺序表:根据删除指定位置的元素; 逆转顺序表:按逆序倒置所有的元素; 排序顺序表:按照升序排列所有元素;
💻 H
字号:
// List.h: interface for the List class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_LIST_H__32AE370F_DD2E_4F58_856D_2E1D06D478CF__INCLUDED_)
#define AFX_LIST_H__32AE370F_DD2E_4F58_856D_2E1D06D478CF__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include"LinkNode.h"
#include<stdlib.h>
template<class T>

class List  
{
public:
	List(){first=new LinkNode<T>;}                               //构造函数
	List(const T&x){first=new LinkNode<T>(x);}
	List(List<T>&L);                                             //复制构造函数
	virtual ~List(){makeEmpty();}                                //将链表置为空表
	void makeEmpty();                                            //将链表置为空表
	int Length()const;                                           //计算链表的长度
	LinkNode<T>* getHead()const{return first;}                   //返回附加头结点 
	void setHead(LinkNode<T>*p){first=p;}     
	LinkNode<T>* Search(T x);		                           	 //搜索含数据x的元素地址
	LinkNode<T>* Locate(int i);		                             //搜索第i个元素地址
	T* getData(int i);			                                 //取出第i个元素地址
	void setData(int i,T& x);                                    //用x修改第i个元素的值
	bool Insert(int i,T x);                                      //在第i个元素后插入x
	bool Remove(int i,T&x);                                      //删除第i个元素x返回该元素的值
	bool IsEmpty()const{return(first->link==NULL)?true:false;}   //判表空否
	bool IsFull();                                               //判表满否
	void sort();                                                 //排序
	void output();                                               //输出链表
	void inputRear(T endflag);                                   //后插法建立单链表
	List<T>& operator=(List<T>&L);                //重载函数:赋值
	void reverse();                                              //将链表逆序

protected:
	LinkNode<T>* first;                                          //链表的头指针

};

#endif // !defined(AFX_LIST_H__32AE370F_DD2E_4F58_856D_2E1D06D478CF__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -