• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 526
  • Last Modified:

shell program

send a shell program to implement buble sort
0
sriram_bandi
Asked:
sriram_bandi
1 Solution
 
jonkeCommented:
What's buble sort?
0
 
tfewsterCommented:
This is a "homework" type question (that's been asked before!)  
See http://www.experts-exchange.com/info/usrcntr.htm for guidelines on acceptable questions
0
 
ozoCommented:
man sort
0
Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

 
jonkeCommented:
Oh- still don't see where the buble bit comes in though
0
 
sriram_bandiAuthor Commented:
sorry it's actually bubble sort
0
 
sriram_bandiAuthor Commented:
i am a kid in unix shell programing
i don't know how to develop array concept in shell that's why i am facing problems in implementing bubble sort.please experts, send that program(if and only if possible immediately)
0
 
onalennaCommented:
Have you ever programmed in C or C++? It's much easier moving from
those to shell programming. Good luck.
0
 
sriram_bandiAuthor Commented:
Adjusted points from 50 to 125
0
 
meerakCommented:
You can use arrays in Shell scripts as in C programs.
eg.
You can use a[2]="test"
See "man page" for ksh for more details
0
 
ahoffmannCommented:
. or man csh
  man bash
  man tcsh
man perl (if you think of using perl as a shell ;-)
0
 
misguidedCommented:
btw are u using sh? or bash?
   well there some basic loops u can use, for loops, while loop, until loop.

 syntax,

     for var in [list of strings]
        do
        done

     while [condition]
        do
        done

     until [condition]
        do
        done

then there the if syntax is if [condition]

 to use x++

u can x = `expr x + 1`;
then test it with if [x=0] like that easy?

from those structures i guess u could already make a bubble sort..:) happy coding.. for help on syntax write me at misguided@hotmail.com

                    misguided
     

           
0
 
ravindra042100Commented:
#!/usr/bin/ksh

print1()
{
echo "0: ${A[0]}"
echo "1: ${A[1]}"
echo "2: ${A[2]}"
echo "3: ${A[3]}"
}

SWAP=1
PASS=0
A[0]=2
A[1]=1
A[2]=5
A[3]=3
n=4
echo "Before:"
print1
while [ $SWAP -eq 1 ]
do
      SWAP=0
      times=$(($n-$PASS-1))
      i=0
      while [ $times -gt $i ]
      do
      
            j=$(($i+1))
            diff=$((${A[$j]}-${A[$i]}))
            if [ $diff -lt 0 ]
            then
                  TEMP=${A[$i]}
                  A[$i]=${A[$j]}
                  A[$j]=$TEMP
                  SWAP=1
              fi       
            PASS=$(($PASS+1))
            i=$(($i+1))
        done      
done
echo "After:"
print1
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now