Estructuras dinámicas en C: Listas tipo Cola

  Рет қаралды 7,320

diego moisset de espanes

diego moisset de espanes

Күн бұрын

Пікірлер
@Profe_Zandor
@Profe_Zandor 11 ай бұрын
Gracias buen hombre me entere por programar YA, saludos desde Colombia
@tonymarquezgudi4047
@tonymarquezgudi4047 6 ай бұрын
gran video
@elchamuskooficial4528
@elchamuskooficial4528 2 жыл бұрын
Que buena explicación..
@ryomaechizen7171
@ryomaechizen7171 3 жыл бұрын
para el que copia y pega para luego ejecutar el programa, en la respuesta ofrecida por el profesor falta unas lineas: -int vacia() { if (raiz == NULL) return 1; else return 0; } sino te dice que vacia no esta indicada o algo asi, yo lo estoy haciendo en vs code y no sabia porque no podia correrlo. por mi cuenta, le saque "return 0;" xq no queria ejecutarlo, no se bien porque. muchas gracias
@lisandroleguizamo3051
@lisandroleguizamo3051 Жыл бұрын
hola profe... mi profesor en la facultad usa un doble puntero en las funciones, al igual lo hace con listas. digamos q no usa esos 2 punteros raiz y fondo.. como puedo cambiarlo a este para implementsrlo con un puntero doble en la funcion y usar ese nomas?
@jonathaniurman9794
@jonathaniurman9794 Жыл бұрын
Muchas gracias por los videos y la página. Tenia una consulta. Si fondo es un puntero externo al nuevoNodo, cuando se agrega otro nuevo nodo màs, supongamos nuevoNodo2 (cambio el nombre para diferenciar) , no entiendo como es que al hacer fondo->sig= nuevoNodo2 se enlaza la propiedad "sig" del nodo que ya estaba, con el nuevo que se agrega. Porque lo que se esta modificando es el puntero externo fondo, no el nodo que ya estaba creado.(nuevoNodo). yo pensaba que si la lista, no estaba vacía, sucedia algo asi: nuevoNodo -> sig = fondo y luego se traslada fondo al nuevo nodo que ingresa recien creado: fondo -> nuevoNodo. Espero haber sido claro y desde ya muchas gracias. saludos!
@diegomoissetdeespanes
@diegomoissetdeespanes Жыл бұрын
Si se modifica el último nodo cuando hacemos la asignación: fondo->sig = nuevoNodo2 No se modificaría el último nodo de la lista si hacemos: fondo = nuevoNodo2 El puntero sig se encuentra dentro del nodo y si sabemos que fondo tiene la dirección del último nodo de la lista, la asignación: fondo-sig = nuevoNodo2 estamos enlazando el último nodo de la lista con el nuevo nodo (si la lista hasta ese momento tenía 10 nodos, ahora pasa a tener 11 nodos) Es incorrecto hacer: nuevoNodo -> sig = fondo si decimos que nuevoNodo tiene la referencia al que va a ser el último nodo de la lista, después de este no debe hacer otro nodo, por ello debemos asignar NULL al puntero interno sig. Cometí el error de no hacer dibujos de las listas para su mejor entendimiento. Saludos.
@robersantillan4572
@robersantillan4572 3 жыл бұрын
Profe como va...gracias por los videos...Me esta costando bastante ..pero ahi vamos..Una pregunta ud tendria un link o tutorial de como debugear en codeblock..creo que esa accion me va ayudar a entender mejor cuando van cambiando los valores de los punteros y la info de los nodos... en este caso..que es lo mas que cuesta.Desde ya muchas gracias por todo su incalculable aporte
@diegomoissetdeespanes
@diegomoissetdeespanes 3 жыл бұрын
Hay que crear un proyecto para poder depurar un programa con el CodeBlock kzbin.info/www/bejne/qKiuhoKaYsyskLc
@robersantillan4572
@robersantillan4572 3 жыл бұрын
Profe...buen dia ...ante todo muchas grs por sus videos. Pregunta en la Estruc. Dinamicas tipo Cola. Hice el codigo tal cual me indica el video. Pero cuando invoco a la funcion void imprimir(), me muestra los valores de los nodos 5 - 10 - 50, al extraer un nodo de la cola, me imprime 10 -5. La pregunta es, para entender como la lista tipo COLA hace que el primero que entra es el primera que sale...Como tendria que realizar el codigo de int extraer().. para que salga el 5 y no el 50..? No se si me entiende la pregunta... grs
@diegomoissetdeespanes
@diegomoissetdeespanes 3 жыл бұрын
Comparalo con el siguiente código: #include #include #include struct nodo { int info; struct nodo *sig; }; struct nodo *raiz=NULL; struct nodo *fondo=NULL; int vacia() { if (raiz == NULL) return 1; else return 0; } void insertar(int x) { struct nodo *nuevo; nuevo=malloc(sizeof(struct nodo)); nuevo->info=x; nuevo->sig=NULL; if (vacia()) { raiz = nuevo; fondo = nuevo; } else { fondo->sig = nuevo; fondo = nuevo; } } int extraer() { if (!vacia()) { int informacion = raiz->info; struct nodo *bor = raiz; if (raiz == fondo) { raiz = NULL; fondo = NULL; } else { raiz = raiz->sig; } free(bor); return informacion; } else return -1; } void imprimir() { struct nodo *reco = raiz; printf("Listado de todos los elementos de la cola. "); while (reco != NULL) { printf("%i - ", reco->info); reco = reco->sig; } printf(" "); } void liberar() { struct nodo *reco = raiz; struct nodo *bor; while (reco != NULL) { bor = reco; reco = reco->sig; free(bor); } } void main() { insertar(1); insertar(2); insertar(3); imprimir(); printf("Extraemos uno de la cola: %i ", extraer()); imprimir(); liberar(); getch(); return 0; } Como se insertan los valores en una cola: 1, luego el 2 y finalmente el 3, si imprimimos se debe mostrar 1,2 y 3. Si extraemos luego debe ser el 1, debido a que es el primero que insertamos. Si imprimimos de nuevo luego debe mostrar los valores que restan en la cola que son: 2 y 3.
@robersantillan4572
@robersantillan4572 3 жыл бұрын
@@diegomoissetdeespanes PERFECTO profe..ahora si..me quedo totalmente en claro el tema la insercion y extraccion de los nodos en este tipo (COLA). En realidad es lo mismo que el anterior..solamente que ahora con estos valores que ingresan al nodo ..me fue mas claro. Gracias Profe..
@gasparfierre9562
@gasparfierre9562 2 жыл бұрын
hola profe ami me tira este warning en return 0 ; warning:´return´ vitch a value , in function returning void
@diegomoissetdeespanes
@diegomoissetdeespanes 2 жыл бұрын
Gracias, cometí un error, la función debe retornar un tipo de dato int: int main() { insertar(5); insertar(10); insertar(50); imprimir(); printf("Extraemos uno de la cola: %i ", extraer()); imprimir(); liberar(); getch(); return 0; }
@gasparfierre9562
@gasparfierre9562 2 жыл бұрын
@@diegomoissetdeespanes ok , profe entonces en vez de un void main () va un int main ()
Estructuras dinámicas en C: Listas tipo Cola - Problema de aplicación
12:08
diego moisset de espanes
Рет қаралды 2,1 М.
Estructuras dinámicas en C: Listas tipo Pila - 1
17:08
diego moisset de espanes
Рет қаралды 10 М.
요즘유행 찍는법
0:34
오마이비키 OMV
Рет қаралды 12 МЛН
КОНЦЕРТЫ:  2 сезон | 1 выпуск | Камызяки
46:36
ТНТ Смотри еще!
Рет қаралды 3,7 МЛН
101. Programación en C++ || Colas || Eliminar elementos de una cola
14:54
Estructuras dinámicas en C: Concepto de listas
6:18
diego moisset de espanes
Рет қаралды 4,4 М.
I made Tetris in C, this is what I learned
15:15
Austin Larsen
Рет қаралды 22 М.
¿Cómo implementar listas enlazadas en C? (Parte 1)
17:05
Ismael Robles
Рет қаралды 3,4 М.
Aprende ESTRUCTURAS DE DATOS en menos de 30 Minutos
28:55
otro más de sistemas
Рет қаралды 140 М.
Filas/Colas - Implementación con una lista enlazada
9:10
Jose Colbes
Рет қаралды 2,6 М.
Tutorial C || Estructuras dinámicas de datos || Pila || Stack
19:56
Fantasma del teclado
Рет қаралды 430
Estructuras de datos - 6. Colas en C
11:21
makigas
Рет қаралды 43 М.