UTNianos

Versión completa: [Pedido] Final de algoritmos 18/02/12
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2
Claro, insertar1erNodo es lo mismo que apilar...

Lo de colas eneral no lo vi usar mucho, hice muchisimos finales y no fue necesario usarlo nunca..

Para entenderlo te recomiendo que vayas haciendo un dibujo de los nodos siguiendo los pasos del algoritmo...empeza con una lista apuntando a nil y encola un nodo y asi hasta que lo entiendas...lo mismo con Desencolar

Despues te paso el InsertarOrdenado! Ahora no lo tengo, dsp lo escaneo y subo!
Creo que tengo uno de esos apuntes y que te lo explica con ejemplos
A mi en su momento me sirvió una banda

Es cortito, asi que cuando esté en casa lo subo =)
Buenisimo, ya encontre el InsertaOrdenado en la guia del Modulo 3, muchas gracias a ambos =D
Recien hoy resuelvo este final, la verdad q es largo...

Lo unico q hubiera cambiado es q los archivos de carreras (vector) y de materias (pila con sublista) los proceso juntos ya q comparten el orden, el vector lo cargo tal cual viene la data del archivo y despues lo recorro haciendo un for desde 15 a 1, al haberlo inicializado en 0 preg si no es distinto de cero e imprimo (por si no habia 15 carreras), o sea lo recorro en sentido contrario para imitar la pila sin usar maximo logico.

Lo q no estoy muy seguro es si esta bien decir q es una pila, aunque sea de tipo FILO me parece q en las pilas no se puede buscar y nosotros necesitamos hacerlo para cargar la sublista de inscriptos ya q la misma no tiene orden. Ademas la busqueda podria ser binaria, nunca use una binaria en una cola ni lo haria por el tiempo q tenemos para resolver.

En cuanto al orden, el mismo tiene q cambiar cada 20 nodos de la sublista, por lo cual yo al recorrer la sublista usaria un CONTADOR y si al hacer el MOD 20 (modulo) del mismo me da 0 (RESTO 0) lo reinicio junto al total e imprimo. Parece rebuscando pero usar el modulo en estos casos es simple. En este caso se podria usar div 20 porque reiniciamos el contador, pero en caso de querer usar un corte y seguir incrementando el contador es mejor el MOD

saludos
No hace falta que lo llames pila :O
Es una lista que inserta en forma de pila, ojota.

Lo del MOD para el corte lo usaba mucho cuando la cursaba
En este final particularmente me pareció relativamente innecesario; digamos..

Yo voy leyendo de 1 a M (M es mi cantidad de carreras, en el final dice: como MAXIMO 15. No dice que son 15, entonces salvé eso que me pareció de importancia)
Tomo el codCarr, y busco en la lista todos los nodos que tengan ese codCarr [utilizo un buscaNodo]
Cuando encuentro, suprimo ese nodo y al suprimir ya puedo imprimir la información de la materia (para imprimir el encabezado ese, me piden la carrera y la materia). Voy a tener un contador para ver cuántos alumnos voy imprimiendo y en caso de ser necesario, incremento el folio.

Mi manera de pensar, fue setear el libro y el folio, y con un If controlar el orden para ver si incremento el folio, o sigo imprimiendo los alumnos.
chicos tengo una duda sobre el procedimiento buscarEnLista, la lista no tiene que estar ordenado por el campo que queremos buscar? en este caso la lista esta ordenada por codigo de carrera, no por codigo de materia.. se puede buscar igual?
Aunque me dijiste que ya resolviste la cuestión, no quería dejar la pregunta abierta.
Cuando leí la pregunta de buenas y primeras creí que estabas relacionando a ese buscarEnLista con una búsqueda binaria, que en ese caso sí tiene que estar ordenado.

El buscarEnLista al que se referían en posts anteriores es este:

[Imagen: listaBuscar.jpg]

Me posiciono con el puntero y leo; si es el valor que busco, listo. Sino, sigo leyendo hasta terminar de recorrer la lista.
si, se me mezclo con busqueda binaria, muchas gracias!
Perdon por revivir pero justo lo estaba haciendo..

cuando dice memoria para arrays: 195 by, si o si hay que usar todos? Yo por ejemplo hice un vector de registros de 2 campos, en un campo guardo el codigo de carrera y en el otro un nodo a la lista de materias, o sea tengo 15 listas de materias una por cada carrera y despues se me hizo mucho mas facil emitir el listado, recorriendo el vector e imprimiendo las listas, sublista de alumnos inscriptos etc etc

75 bytes el vector
No, no hace falta usar todo. Es el máximo para utilizar, si usas menos no hay drama.
(02-08-2013 17:42)Maartin escribió: [ -> ]No, no hace falta usar todo. Es el máximo para utilizar, si usas menos no hay drama.

Estas seguro porque me parece medio ambiguo eso.. practique muchos finales y te lo ponen de muchas formas

para arrays 200 by
para arrays 200 by maximo

nodos de 20 by
nodos maximo 20 by
nodos de a lo sumo 20 by

Me da cagaso de que justo te obliguen a que uses esa cantidad si o si, si es menos no importa
Mirá
No creo ni que te pongan las restricciones esas.. el final se flexibilizó un poquito.
Igual, cuando te ponen restricciones, vos podés usar la cantidad que te dan COMO MUCHO. A veces lo especifican, onda "nodos de 5 bytes como máximo" o cosas así

Quedate tranquilo/a, no te estamos bicicleteando. Y sino, le preguntás al docente que esté en el aula.. no te van a negar respuesta a eso.

Lo suelen poner distinto porque a veces lo hacen distintos profes...

=)
Páginas: 1 2
URLs de referencia