source: branches/v4/platforms/caba-ring-ccxcachev4_memcachev4-mips32el/soft/sort/sort_bubble.c @ 643

Last change on this file since 643 was 134, checked in by kane, 13 years ago

add multi write buffer in cc_xcache_v4

File size: 1.1 KB
Line 
1#include "sort.h"
2#include "system.h"
3#include "stdio.h"
4
5void sort_bubble(unsigned int *base, unsigned int n)
6{
7        int i   = 0; /* Indice de répétition du tri */
8        int j   = 0; /* Variable de boucle */
9        int tmp = 0; /* Variable de stockage temporaire */
10        int en_desordre = 1; /* Booléen marquant l'arrêt du tri si le tableau est ordonné */
11
12        /* Boucle de répétition du tri et le test qui arrête le tri dÚs que le tableau est ordonné */
13        for(i = 0 ; (i < n) && en_desordre; i++)
14        {
15#if VERBOSE_SORT
16                printf("-"); // added for debug
17#endif
18                /* Supposons le tableau ordonné */
19                en_desordre = 0;
20                /* Vérification des éléments des places j et j-1 */
21                for(j = 1 ; j < n - i ; j++)
22                {
23                        /* Si les 2 éléments sont mal triés */
24                        if(base[j] < base[j-1])
25                        {
26                                /* Inversion des 2 éléments */
27                                tmp = base[j-1];
28                                base[j-1] = base[j];
29                                base[j] = tmp;
30 
31                                /* Le tableau n'est toujours pas trié */
32                                en_desordre = 1;
33                        }
34                }
35
36#if VERBOSE_SORT
37                printf("+"); // added for debug
38#endif
39        }
40
41#if VERBOSE_SORT
42    printf("\n");
43#endif
44}
Note: See TracBrowser for help on using the repository browser.