Código de C/Visual C - Algoritmo de ordenación Shell en C++

Versión 1
estrellaestrellaestrellaestrellaestrella(5)

Publicado el 13 de Febrero del 2002gráfica de visualizaciones de la versión: Versión 1
69.260 visualizaciones desde el 13 de Febrero del 2002
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

Adaptación y mejora del método por inserción directa. Se utiliza un array con gran número de elemento en el cual compara a cada elemento con el que está a cierto número de lugares a su izquierda. Este salto es constante a razón de N/2 (siendo N el número de elementos). Se realiza el bucle hasta que no se intercanvien mas elementos de sitio. Este salto se reduce a la mitad y se vuelven a dar pasadas hasta que no se intercambie nadie con nadie. El algoritmo finaliza en el momento en que el salto es 1.

Ejemplo:
Tenemos el siguente array {55,36,19,24,25,50}

Salto=3:
Primera iteración:
{24,36,19,55,25,50} <-- Cambia el 55 y el 24.
{24,25,19,55,36,50} <-- Cambia el 36 y el 25.
Salto=1:
Primera iteración:
{24,19,25,55,36,50} <-- Cambia el 25 y el 19.
{24,19,25,36,55,50} <-- Cambia el 55 y el 36.
{24,19,25,36,50,55} <-- Cambia el 50 y el 55.
Segunda iteración:
{19,24,25,36,50,55} <-- Cambia el 19 y el 24.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* -------------------------------------------------- */
/*  Implementación del algoritmo de ordenación Shell  */
/* ------ http://www.lawebdelprogramador.com -------- */
/* -------------------------------------------------- */
#include<stdio.h>
#define MAXC 7
 
void main()
{
	int array[MAXC]={6,1,5,2,3,4,0};
	int cont,pasos,temp,i;
 
	for(cont=MAXC/2;cont!=0;cont/=2)
		for(pasos=1;pasos!=0;)
		{
			pasos=0;
			for(i=cont;i<MAXC;i++)
				if(array[i-cont]>array[i])
				{
					temp=array[i];
					array[i]=array[i-cont];
					array[i-cont]=temp;
					pasos++;
				}
		}
}



Comentarios sobre la versión: Versión 1 (5)

Pablo Cesar
13 de Febrero del 2002
estrellaestrellaestrellaestrellaestrella
×××Esta con ganas el
codesource×××
♪bye~♪
Responder
Gustavo
9 de Marzo del 2007
estrellaestrellaestrellaestrellaestrella
Hasta que por fin encontré uno que sirviera.
Muy Bueno.
Responder
Camilo Andres
30 de Octubre del 2007
estrellaestrellaestrellaestrellaestrella
A quien me pueda colaborar se lo agradecere...
necesito lo mas pronto posible 3 programas en c++,
1 con la aplicacion del quicksort
1 con la aplicacion del metodo de shell
1 con la aplicacion del metodo de busqueda binaria.

Agradezco la colaboracion pertinente
Responder
xxtentaprogramerxx
25 de Mayo del 2022
estrellaestrellaestrellaestrellaestrella
Cuanto varo estas dispuesto a soltar carnal
Responder
Programador Buchon
1 de Marzo del 2016
estrellaestrellaestrellaestrellaestrella
Esta al 100
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s86