none
Listas sin for RRS feed

  • Pregunta

  • Buenas tardes, tengo este problema: Partir una lista L en dos listas A y B de manera que el último
    elemento de A aparezca en B.

    Ejemplo l = 1, 2, 3, 4, 3, 5 A = 1, 2, 3 B= 4, 3, 5

    No debe de contener ciclos 

    domingo, 29 de marzo de 2020 22:32

Todas las respuestas

  • No debe de contener ciclos 

    Imposible. Para procesar una lista cuya longitud no se conoce de antemano, es imprescindible usar un ciclo, aunque el ciclo esté "oculto" y no se vea a primera vista. Por ejemplo, podrías hacerlo mediante un método recursivo, cosa que dará la impresión visual de que no existe un ciclo. Pero en realidad, internamente, la ejecución de la recursión resultará a efectos de la CPU en que se ejecuten cíclicamente las instrucciones que contiene el método. Siempre vas a tener un ciclo.

    lunes, 30 de marzo de 2020 7:48
    Moderador
  • hola

    Sin usar for lo unico que se me ocurres es aplicando linq

    Split List into Sublists with LINQ

    como veras usan el index del elemento de la lista para agruparlo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 30 de marzo de 2020 14:09
  • Hola 

     

    Gracias por levantar tu consulta en los foros de MSDN. Con respecto a la misma, la lista debe estar ordenada o ya la dan ordenada?

    Debe validar que no tenga repeticiones? Si puedes subir todo el enunnciado con mas detalles seria genial!

    Como dice Alberto, la lista de n elementos requerira siempre un ciclo ya sea iterativo (for, while) o recursivo (de pila o cola), pero si el objetivo es que el ultimo elemento de A exista en B, podriamos considerar algun metodo que solo sea una instruccion que ingrese el ultimo de A en B.

     

    Por favor indícame si puedo ofrecerte una mejor respuesta.

    Gracias por usar los foros de MSDN.

     

    Luis Diego Mora

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.


    lunes, 30 de marzo de 2020 14:33
    Moderador