Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function Listas() {
- var Node = function(elem) {
- this.element = elem;
- this.next = null;
- }
- var listSize = 0;
- var cabecera = null;
- this.add = function(elem) {
- var node = new Node(elem);
- var nodoActual;
- if(!cabecera) {
- cabecera = node;
- } else {
- nodoActual = cabecera;
- while(nodoActual.next) {
- nodoActual = nodoActual.next;
- }
- nodoActual.next = node;
- }
- listSize++;
- }
- this.insert = function(element, pos) {
- // Verificamos que la posición exista
- if (pos > -1 && pos < listSize) {
- var node = new Node(element);
- var currentNode = cabecera;
- var previousNode;
- var index = 0;
- // Primer elemento
- if (pos === 0) {
- node.next = currentNode;
- cabecera = node;
- } else {
- while (index++ < pos) {
- console.log(index);
- previousNode = currentNode;
- currentNode = currentNode.next;
- }
- node.next = currentNode;
- previousNode.next = node;
- }
- listSize++;
- return true;
- }
- return false;
- }
- this.toString = function() {
- var currentNode = cabecera;
- var str = '|';
- while(currentNode) {
- str += currentNode.element + '|';
- currentNode = currentNode.next;
- }
- return str;
- }
- }
- var listas = new Listas();
- listas.add(1);
- listas.add(2);
- listas.add(3);
- listas.insert(22, 2);
- console.log(listas.toString());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement