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

📄 intlist.cpp

📁 矩阵运算的算法 用Type类数组创建矩阵对象 matrix(int rows,int cols) //创建矩阵,值为0 matrix(int n) //创建单位阵 matrix(c
💻 CPP
字号:
#include "stdafx.h"

#include "IntList.h"
#include "Node.h"

Linklist::Linklist()
{first = current = last = new Node;prior = NULL;}

void Linklist::MakeEmpty() 
{ Node *q;
 while(first->next!=NULL)
	{q = first->next;
	 first->next=q->next;
     delete q;
	}
  Initialize();
}
int Linklist::Getdata()
{if(current!=NULL)
    return current->data;
else
	{MessageBox(NULL,"illagel!","BUG",0);
	return 0;
	}
}
int *Linklist::Get()
{if (current!= NULL) 
     return &current->data;
  else return NULL;
}
bool Linklist::Put(int &value)
{if (current != NULL)
	{current->data = value;
     return true;
	}
else 
return false;
}

int *Linklist::GetNext()
{
if (current->next != NULL) 
	{return &current->next->data;}
else 
return NULL;
}

void Linklist::Next()
{ if(current!=NULL && current->next!=NULL)
	{prior=current; 
	 current=current->next;
	}
else
	{MessageBox(NULL,"illagel!","BUG",0);}
}

void Linklist::InsertBack( int &value)
{ Node *p=new Node(value,current->next);
  current->next=p;
  current=p;
}

void Linklist::InsertBefore(int &value)
{  Node *p=new Node(value);
if (prior != NULL)
	{p->next=current;
	 prior->next=p;
	 prior = p;
	}
else
{MessageBox(NULL,"illagel!","BUG",0);}

}

/*bool Linklist::Locate(int i)//移动current到第i个节点
{
if (i <= -1) 
  return FALSE;
current = first->data;
for(int  j = 0; current != NULL && j < i; j++, current = current->next) 
   prior = current;
      if (current != NULL) 
           return TURE;
      else 
		  return FALSE;
}*/

void Linklist::First()
{current=first;prior=NULL;}

void Linklist::End()
{
	if(last->data!= NULL)
	{ for(;current->next!=NULL;current = current->next)
		{prior=current;
		last=current;
		}
	}
 else
	{current = last;} 
}

void Linklist::Remove()
{
if (current != NULL && prior != NULL)
	{Node *p = current;
	 prior->next = p->next;
	 current = p->next;
	 delete p;
	}
else 
   {MessageBox(NULL,"illagel!","BUG",0);}
}

void Linklist::CreatListH(int n)
{ int i;
  Node *s,*p;
  p=new Node;
  p->next=NULL;
 for(i=1;i<=n;i++)
  {s=new Node;
  s->data=i;
  s->next=p->next;
  p->next=s;
  }
}

void Linklist::CreatListR(int n)
{
	Node *s,*p,*r;
	int i;
	p=r=new Node;
	p->next=NULL;
for(i=1;i<=n;i++)
	{s=new Node;
	 s->data=i;
	 r->next=s;
	 r=s;
	}
	r->next=NULL;
}

void Linklist::Swaplist()
{ Node *p,*s;
   p=first->next;
   first->next=NULL;
  while(first!=NULL)
   { s=p->next;
   p->next=first->next;
   first->next=p;
   p=s;
   }
}

⌨️ 快捷键说明

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