Guia de sistemas

Solo disponible en BuenasTareas
  • Páginas : 2 (456 palabras )
  • Descarga(s) : 0
  • Publicado : 1 de noviembre de 2011
Leer documento completo
Vista previa del texto
#include "lista.h"
#include

Lista::Lista()
{
_cabeza=_cola=_cursor=NULL;
_t=0;
}

Lista::~Lista()
{
while(!vacia())
{
borra();
}
}

int Lista::tama(void)
{return _t;
}

bool Lista::vacia(void)
{
if (_cabeza==NULL)
{
return true;
}
else
{
return false;
}
}

bool Lista::reset(void)
{
if (!vacia())
{_cursor=_cabeza;
return true;
}
else
{
return false;
}
}

bool Lista::final(void)
{
if (!vacia())
{
_cursor=_cola;
return true;
}else
{
return false;
}
}

bool Lista::siguiente(void)
{
if (_cursor->siguiente!=NULL)
{
_cursor=_cursor->siguiente;
return true;
}
else
{return false;
}
}

bool Lista::anterior(void)
{
if (_cursor->anterior!=NULL)
{
_cursor=_cursor->anterior;
return true;
}
else
{
return false;
}
}bool Lista::get(int &info)
{
if (_cursor!=NULL)
{
info=_cursor->info;
return true;
}
else
{
return false;
}
}

bool Lista::set(int valor)
{
if(_cursor!=NULL)
{
_cursor->info=valor;
return true;
}
else
{
return false;
}
}

bool Lista::inserta(int valor)
{
Nodo * aux = new Nodo;aux->info=valor;

if (vacia())
{
aux->siguiente=NULL;
aux->anterior=NULL;
_cabeza=_cursor=_cola=aux;
}
else
{
if((_t==1)||(_cursor==_cabeza))
{aux->anterior=NULL;
aux->siguiente=_cabeza;
_cursor->anterior=aux;
_cabeza=_cursor=aux;
}
else
{
aux->anterior=_cursor->anterior;aux->siguiente=_cursor;
_cursor->anterior->siguiente=aux;
_cursor->anterior=aux;
_cursor=aux;
}
}
_t++;
return true;
}

int Lista::insertaPrincipio(int...
tracking img