Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 KB | None | 0 0
  1.  
  2. public class listaordenada {
  3.  
  4. nodo inicio,fin;
  5. public listaordenada() {
  6. inicio = null;
  7. fin = null;
  8. }
  9.  
  10. //Saber si esta vacia
  11. public boolean estaVacia() {
  12. if(inicio==null) {
  13. return true;
  14. }else {
  15. return false;
  16. }
  17. }
  18.  
  19. //Metodo insertar al final
  20. public void agregarFinal(int dato) {
  21. if(!estaVacia()) {
  22. fin.siguiente = new nodo(dato);
  23. fin = fin.siguiente;
  24. }else {
  25. inicio=fin=new nodo(dato);
  26. }
  27. }
  28.  
  29. //Agregar nodo al inicio
  30. public void agregarAlInicio(int dato) {
  31. //Creando al nodo
  32. inicio = new nodo(dato,inicio);
  33. if(fin==null) {
  34. fin=inicio;
  35. }
  36. }
  37.  
  38. //Borrar al inicio
  39. public int borrarDelInicio() {
  40. int elemento = inicio.dato;
  41. if(inicio == fin) {
  42. inicio=fin=null;
  43. }else {
  44. inicio = inicio.siguiente;
  45. }
  46. return elemento;
  47. }
  48.  
  49. //Borrar al final
  50. public int borrarDelFinal() {
  51. int elemento = fin.dato;
  52. if(inicio==fin) {
  53. inicio=fin=null;
  54.  
  55. }else {
  56. nodo aux = inicio;
  57. while(aux.siguiente!=fin) {
  58. aux=aux.siguiente;
  59.  
  60. }
  61. fin = aux;
  62. fin.siguiente=null;
  63. }
  64. return elemento;
  65. }
  66.  
  67. //Metodo eliminar un dato en especifico
  68. public void eliminar(int dato) {
  69. if(!estaVacia()) {
  70. if(inicio==fin && dato==inicio.dato) {
  71. inicio=fin=null;
  72. }else if(dato==inicio.dato){
  73. inicio=inicio.siguiente;
  74. }else {
  75. nodo anterior,aux;
  76. anterior = inicio;
  77. aux = inicio.siguiente;
  78. while(aux!=null && aux.dato!=dato) {
  79. anterior=anterior.siguiente;
  80. aux=aux.siguiente;
  81. }
  82. if(aux!=null) {
  83. anterior.siguiente = aux.siguiente;
  84. if(aux==fin) {
  85. fin=anterior;
  86. }
  87. }
  88. }
  89. }
  90. }
  91. //Metodo mostrar datos
  92. public void mostrarLista() {
  93. nodo aux = inicio;
  94. while(aux!=null) {
  95. System.out.print("["+aux.dato+"]--->");
  96. aux = aux.siguiente;
  97. }
  98. }
  99.  
  100.  
  101.  
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement