Manipulación de listas en LISP

En este artículo, discutiremos la manipulación de listas en LISP. La lista es una estructura de datos que puede almacenar elementos de múltiples tipos de datos

podemos crear una lista usando la función de lista

Sintaxis :

(list element1 element2 .................. element n)

Las funciones de manipulación de listas se utilizan para manipular y devolver la lista de elementos.

1. Función coche():

Esta función se utiliza para mostrar el primer elemento de la lista.

Sintaxis :

(car '(element1 element2 ........... element n))

Ejemplo:

Lisp

;list of integer elements
(write (car '(1 2 3 4 5)))
(terpri)
  
;list of characters
(write (car '(a b)))
(terpri)

Producción:

1
A

2. Función cdr():

Esta función se utiliza para mostrar la lista de todos los elementos excepto el primer elemento 

Sintaxis :

(cdr '(element1 element2 ........... element n))

Ejemplo:

Lisp

;list of integer elements
(write (cdr '(1 2 3 4 5)))
(terpri)
  
;list of characters
(write (cdr '(a b)))
(terpri)

Producción:

(2 3 4 5)
(B)

3.contras() FUNCIÓN:

Esta función tomará dos artículos. uno es un valor y otro es la lista. Esto insertará el valor en el primer lugar de la lista y devolverá la nueva lista

Sintaxis :

(cons 'value '(list_of_elements)))

dónde,

  • valor es el elemento a insertar
  • list_of_elements es la lista de elementos

Ejemplo:

Lisp

;list of integer elements
;insert 100
(write (cons '100 '(1 2 3 4 5)))
(terpri)
  
;list of characters
;insert a
(write (cons 'a '(b c d e f)))
(terpri)

Producción:

(100 1 2 3 4 5)
(A B C D E F)

4. función lista():

Esta función tomará varias listas y las mostrará.

Sintaxis :

(list 'list1 'list2  ........ 'listn)

Ejemplo:

Lisp

;two lists and one variable
(write (list '100 '(1 2 3 4 5) '(g e e k s)))
(terpri)

Producción:

(100 (1 2 3 4 5) (G E E K S))

5. Función agregar():

Esta función agregará las dos o múltiples listas.

Sintaxis:

(append'list1 'list2  ........ 'listn)

Ejemplo:

Lisp

;consider two lists and append
(write (append  '(1 2 3 4 5) '(g e e k s)))
(terpri)
  
;consider three lists and append
(write (append '(10 20) '(20 30 45) '(a s d)))
(terpri)

Producción:

(1 2 3 4 5 G E E K S)
(10 20 20 30 45 A S D)

6. última() Función:

Esta función devuelve la lista que contiene el último elemento de la lista

Sintaxis :

(last 'list)

Ejemplo :

Lisp

;consider a list and get last element
(write (last  '(1 2 3 4 5) ))
(terpri)
  
;consider a list and get last element
(write (last '(10 20 ( g e e k s))))
(terpri)

Producción:

(5)
((G E E K S))

7. Función miembro():

Esta función se utiliza para devolver la lista en función de los miembros proporcionados.

Tomará dos argumentos:

  1. El primer argumento será el valor.
  2. El segundo argumento será la lista.

Si el valor está presente en la lista, devolverá la lista

De lo contrario, se devuelve NIL.

Sintaxis :

(member  'value 'list )

Ejemplo:

Lisp

;consider a list with 1 as member 
(write (member  '1 '(1 2 3 4 5) ))
(terpri)
  
;consider a list with 10 as member 
(write (member  '10 '(1 2 3 4 5) ))
(terpri)

Producción:

(1 2 3 4 5)
NIL

8. función inversa():

Esta función invierte la lista y devuelve la lista invertida

Sintaxis:

(reverse  'list)

Ejemplo:

Lisp

;consider a list and reverse
(write (reverse  '(1 2 3 4 5) ))
(terpri)
  
  
;consider a list nnd reverse
(write (reverse  '(g e e k s) ))
(terpri)

Producción:

(5 4 3 2 1)
(S K E E G)

Publicación traducida automáticamente

Artículo escrito por saisravanprojects y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *