BT Tin

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

///Bubble sort pseudo code

float a[nLen]={data …};


int Len=nLen, isSorted=0, i;
float tmp;
do{
isSorted = 1;
--Len;
for(i=0;i<Len;i++)
if(a[i]>a[i+1]){
isSorted = 0;
swap(a[i],a[i+1]); // exchange a[i],a[i+1]
}
}while(!isSorted);
// Selection sort (some error)
float a[nLen]={data …};
int Len=nLen, i, j, mark;
for(i=0;i<Len-1;i++){
mark = i;
for(j=i+1;j<Len;j++)
if(a[j]<a[mark])
mark = j;
swap(a[i],a[mark]); // exchange a[i],a[mark]
}
// Linear search
float a[nLen]={data …};
int isFound=false, i;
float key=val;// value to be searched
for(i=0;i<nLen;i++){
if(a[i]==key){
isFound = true;
break;
}
}
// check isFound to see if found or not
// --- Binary search - Input must be sorted
float a[nLen]={data},key=val;
int nLowerBound=0,nUpperBound=nLen-1,nMiddle;
int isFound = false;
while(nUpperBound >= nLowerBound){
nMiddle = (nLowerBound+nUpperBound)/2;
if(key<a[nMiddle])
nUpperBound = nMiddle-1;
else if (key > a[nMiddle])
nLowerBound = nMiddle+1;
else{
isFound = true;
break;
}
}
// Check isFound flag to printout

You might also like