elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ordenación: método de la burbuja
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ordenación: método de la burbuja  (Leído 3,079 veces)
mvk

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Ordenación: método de la burbuja
« en: 11 Noviembre 2012, 19:16 pm »

Hi! Estoy programando en C, pero pongo la duda en está sección, ya que pienso que es más generica que de un lenguaje en particular.

Me encuentro con que en un análisis de las comparaciones que hay que hacer se tiene:

caso más desfavorable: (n-1)+(n-2)+...+2+1 = (n-1)(n/2)

El sacar (n-1)+(n-2)+...+2+1 lo entiendo pero, ¿Como se llega a la expresión (n-1)(n/2) ?

Supongo que es una sucesión pero no llego a esa expresión  :-\

Agradezco toda ayuda que me podáis brindar.


En línea

[Case]


Desconectado Desconectado

Mensajes: 474



Ver Perfil WWW
Re: Ordenación: método de la burbuja
« Respuesta #1 en: 11 Noviembre 2012, 20:28 pm »

Es facil de ver una vez teniendo la idea de donde surgio.

Usare un ejemplo, desde el 1 al 100.
En este caso n = 100.

Ahora si te das cuenta, 1 + 100 = 101, 2 + 99 = 101, 3 + 98 = 101. Asi hasta 50 + 51 = 101.

n/2 es el numero de veces que sumamos 101, que es 50 en este caso.
Y n + 1 es por que la suma de i + n - (i - 1) = n + 1 con i desde 0 hasta n
Que es 101.

Esto nos da la formula (n + 1)(n/2) = n + (n-1) + .. + 2 + 1

Por ultimo y el paso simple. Dado que tu lo que quieres es demostrar la suma desde 0 hasta n - 1, solamente nos falta restar n a la formula (n +1)(n/2).

(n +1)(n/2) - n = (n^2 + n)/2 - 2n/2 = (n^2-n)/2 = (n-1)(n/2)

Y de ahi sale, la demostracion formal debe de salir por inducción sobre n.


En línea

mvk

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Ordenación: método de la burbuja
« Respuesta #2 en: 12 Noviembre 2012, 01:11 am »

Hola Case, me he quedado así :o La verdad es que esto demuestra que estoy muy pez todavía. Lo de n/2 partiendo de 100+1, ok, pero eso de i + n - (i - 1) ya me he perdido, no entiendo que relación tiene con lo demás :(

Gracias por la paciencia
En línea

[Case]


Desconectado Desconectado

Mensajes: 474



Ver Perfil WWW
Re: Ordenación: método de la burbuja
« Respuesta #3 en: 12 Noviembre 2012, 03:56 am »

Si perdo, ahi no lo explique bien.
Mira

La serie en si es:

Desde el i = 1 hasta i = n  ∑i

Que es: 1 + 2 + 3 + ... + n.

Entonces lo que hago es cambiar el orden, en lugar de; 1 +2 + ... + n lo pongo así:

[1 + n] + [2 + n - 1] + [3 + n - 2] + ... + [(n/2) + (n/2 + 1)]

Si te das cuenta cada numero entre corchetes siempre da n + 1, en el caso del ejemplo siempre da 101 = 100 + 1. Y el numero de veces que sumaste n + 1 fue n/2.

Por lo tanto queda (n + 1)(n/2).

Lo demas es seguir la demostracion que te habia puesto.

En línea

mvk

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Ordenación: método de la burbuja
« Respuesta #4 en: 12 Noviembre 2012, 12:48 pm »

La serie pones que es sumatorio de i, pero yo hasta donde entiendo, tengo:
(n-1)+(n-2) + (n-3) +... + 2 + 1
Con lo que aquí ya me pierdo.

Y luego, la serie 1 + 2 + ... + n, la conviertes en sumatorios de (n+1), pero sumar (n+1) + (n+1) + (n + 1) +... no es lo mismo que ir 1 + 2 + ... + n.

Puff que lio, voy a darte mucha berra, pero es que tío, no me entra en la almendra.
En línea

mvk

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Ordenación: método de la burbuja
« Respuesta #5 en: 13 Noviembre 2012, 00:08 am »

Soy un boludo, por fin lo entendí!!!!!!

Gracias otra vez, Case.

xau
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ordenacion burbuja
.NET (C#, VB.NET, ASP)
S1dD3xt35 6 4,711 Último mensaje 21 Marzo 2010, 01:09 am
por S1dD3xt35
Método Burbuja
Programación C/C++
Lain0x 3 4,999 Último mensaje 1 Mayo 2011, 21:41 pm
por Lain0x
Metodo Burbuja en ASM
ASM
XxArCaNgElxX 7 13,613 Último mensaje 22 Julio 2011, 21:35 pm
por Иōҳ
Ordenación burbuja
Programación C/C++
Runex 1 2,409 Último mensaje 28 Abril 2012, 01:48 am
por Torino10
Ordenación método de la burbuja
Programación C/C++
neveldine 3 2,531 Último mensaje 9 Diciembre 2015, 23:04 pm
por neveldine
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines