|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - Comstock
Páginas: [1]
1
« en: Miércoles 26 de Mayo de 2004, 19:52 »
Hola al parecer de lo que entendi en una primera leida de tu problema es cuando tienes mas de un valor o conexion a un mismo grafo ,esto algoritmo por lo general es utilizado para grafos dirigidos ya q para los grafos no dirigidos se utiliza prim o kuskal , la idea de djikstra es que ve el camino mas corto de un nodo para llegar a todos los otros , por lo que al tener dos opciones para visitar se visitara al que requiera menor costo . en resumen tu idea esta bastante bien en lo que estas haciendo pero debes notar que primero debes fijar el nodo del que desees comenza , ya q djisktra es para ir de un nodo al resto y no de cualquier nodo al resto ya que para esto se utiliza el algoritmode floyd , pero bueno luego tu comjunto inicial sera solo este nodo con el que comienzas , luego avanzas al mas cercano nodo de los que tienes en tu conjunto de nodos (al comienzo solo el nodo inicial), luego que vistas al nodo mas cercano ,tu conjunto se incrementara al inicial + el visitado y nuevamente tienes que ver cual de los que te quedan es el nodo mas cercano(los visitados ya no cuentan) y asi hasta que hayas visitado todos , bueno eso es mas o menos la idea de djiskra . Si te complique mas de lo que te ayude o si simplemente no fui ninguna ayuda disculpa . En todo caso esta es una pagina en que explican el algoritmo de una manera excelente(grafica) solo que tu ordenador debe entender JAVA ademas esta el codigo para dijkstra . Adios suerte
2
« en: Martes 25 de Mayo de 2004, 17:34 »
Hola primero que nada disculpen por la molesta pregunta q les quiero hacer , de seguro q los molestan bastante seguido con lo mismo , lo que pasa es que quiero comenzar a programar en assembler y me gustaria ssabr si alguien conoce alguna buena pagina para aprender o de donde se pueda bajar algun tutoriall o algo asi , bueno gracias por todo adios
3
« en: Martes 25 de Mayo de 2004, 16:59 »
Disculpen que me meta a esta conversacion , pero me dieron algunas dudas , disculpen la ignorancia , a que se refieren al hablar de archivos directos . Si esto es solo un archivo bueno quizas pueda ayudar algo quizas no , veo que mauricio2 tiene ciertos problemas con la funcion fseek , en cuanto a esto tratare de ayudar en algo int fseek( FILE *stream, long offset, int whence); esta es el prototipo de la funcion fseek la ideal es la siguiente *stream es el puntero al archivo en este caso "archivo" , luego viene long offset esto es la posicion donde uno se quiere ubicar en el archivo eso si respecto al int whence este puede ser SEEK_SET, SEEK_CUR, or SEEK_END el primero nos ubicara en el comienzo del archivo , el segundo nos ubicara en la misma posicion actual , y el tercero nos ubicara en el fin del archivo . Ej di decimos fseek(file,10,SEEK_END) nos posicionaremos en el final del archivo pero luego el long offset en este caso igual a diez nos llevara diez posiciones mas atras , para el SEEK_CUR y el SEEK_SET se contaran las posiciones hacia adelante y no para atras . 2-. En cuanto a tu segunda pregunta no logre entenderla del todo asi que me la puedes explicar un poco mas quizas te pueda ayudar ..... en todo caso luego de dormir algo tratare de revisarla de nuevo haber si entiendo .....jejejeje luego de una noche entera de programar se pierde algo de la capacidad de comprension .
Bueno haber espero sido de alguna ayuda , si no lo fui disculpen por la molestia .
4
« en: Martes 25 de Mayo de 2004, 03:41 »
Hola al igual que tu , estoy hace mas o menos poco en esto de la programacion en C , bueno algo de rato ya he invertido , en cuanto a tu duda de que compilador en lo personal encuentro que devc++ es un excelente compilador , ademas siempre podras recurrir a linux si es que esta dentro de este mundo , pero si no basicamente cualquier compilador te servira solo debes tener cuidado con las librerias que uses tales como la conio.h y algunas otras pero en general no deberias tener problemas con correr programas de un compilador en otro , ah el visual tambien es una buena alternativa para programar no deberia presentar mayores problemas mas que como ya dije con funciones de la antigua conio.h ya que no es una libreria muy standart ademas de que ha cambiado a lo largo del tiempo , Bueno espero haber sido de alguna ayuda , si no lo realmente lo siento , nos vemos en otra oportunidad Adios .
5
« en: Lunes 24 de Mayo de 2004, 19:31 »
/* Segun lo que entendi de la pregunta quizas esto te pueda ser de alguna ayuida sino solo hazlo saber y veremos que se hace
*/ #include<stdio.h> main() { int sim,may,min,i,a,b; printf("Ingrese Dividendo"); scanf("%d",&a); printf("\nIngrese Divisor"); scanf("%d",&b);//hasta aca solo pedir ingreso de divisor i dividendo if(a%b==0)//verifica si el divisor no es multiplo del dividendo en este caso no tiene sentido //entregar el resultado en forma de fraccion printf("\nEl resultado de %d/%d es %d: ",a,b,a/b);//imprime el resultado si es exacto else //entrada a la funcion que simplificara la fraccion { if (a<b)//el if y el else solo esta hecho con la funcion de ver cual elemento es el mayor y cual //el menor esto para que el for no tenga q ralizar operaciones que esten demas ya que //ningun numero se prodra simplificar por otro que sea mayor a si mismo { min=a; may=b; } else { min=b; may=a; } for(i=1;i<min;i++) {//con este for se ve y se guardara el valor del mayor dividendo que tengan en comun ambos numeros //es recomendable inicializarlo en 1 ya que siempre el 1 sera divisor exacto de cualquier numero if(min%i==0 && may%i==0) sim=i; } printf("\nEl resultado de %d/%d es %d/%d: ",a,b,(a/sim),(b/sim)); } return 0; } /*bueno eso seria todo no se si te servira de algo pero es algo q realice algo apurado en todo caso creo que deberia correr sin mayores problemas , esto en todo caso no es algo muy profesional , si no te sirve o si necesitas otro formato de ingreso de datos dilo en el foro y respondo otro dia Nos vemos*/
6
« en: Lunes 24 de Mayo de 2004, 19:08 »
Hola a todos , bueno estoy como comennzando en esto de la programacion y me surgio una duda al estar tratando de realizar una de mis tareas esta es respecto a como se puede hacer para crear un arbol binario (ordenado) a partir de que se me entregara el orden previo o preorden y el inorden (orden simetrico) ambos en forma de arreglo , lo que se me ocurre hasta el momente es usar un arreglo auxilar para marcar los que se han inicializado en ceros que sea paralelo al arreglo de inorden , con esto construir una funcion recursiva que se llame a si misma cada vez que el elemento de la izquierda o la derecha sea 0 y que obviamente no lo haga si este es 1 (arreglo auxiliar ) , osea un poco mas claro primero llamo a la funcion con el valor de la raiz (el primer elemento del arreglo de pre orden) segundo si en el auxiliar al del inorden los elementos adyacentes son 0 significa que tiene hijos o hijo que no han sido insertado en el arbol tercero la funcion se llama a si misma con parametro el nuevo hijo (0) que no ha sido puesto ¿En lo general esta idea es la correcta o a alguien se le ocurre algo mas inteligente l, por que este algoritmo no lo encuentro muy eficiente? bueno deAnte mano gracias
Páginas: [1]
|
|
|