۱۲-اسفند-۱۳۸۸, ۱۹:۱۹:۳۹
با سلام.امیدوارم دوستان همراهی کنند تا این تاپیک بار علمی زیادی رو ایجاد کنه.سعی می کنم که از هرسه روش حل مسئله(DP.D&C.GREEDY) کدهایی رو بذارم.
الگوریتمINSERTION SORT
ابتدا لیستی از اعداد را که داده شده در نظر می گیریم و عدد مورد نظر را که باید به لیست اضافه شود در مکانی موقت (TEMP)قرار می دهیم.بعد به ترتیب از آخر لیست شروع می کنیم به مقایسه کردن عدد موجود در لیست وTEMP. اگر عدد مورد نظر از TEMPبزرگتر بود آن را یک خانه به جلو شیفت می دهیم.اما اگر کوچکتر بود آنرا جایگزین خانه ی جلویی می کنیم.
پیاده سازی در c#.net
پیاده سازی در c++
الگوریتمINSERTION SORT
ابتدا لیستی از اعداد را که داده شده در نظر می گیریم و عدد مورد نظر را که باید به لیست اضافه شود در مکانی موقت (TEMP)قرار می دهیم.بعد به ترتیب از آخر لیست شروع می کنیم به مقایسه کردن عدد موجود در لیست وTEMP. اگر عدد مورد نظر از TEMPبزرگتر بود آن را یک خانه به جلو شیفت می دهیم.اما اگر کوچکتر بود آنرا جایگزین خانه ی جلویی می کنیم.
پیاده سازی در c#.net
کد php:
using system;
using system.collections.generic;
using system.text;
namespace insertionsort
{
class program
{
static void main(string[]args)
{
insertion();
}
//*********************insertion sort****************
public static void insertion()
{
float [] A=new float[6];
console.writeline("please enter five members:");
console.writeline("\n");
for(int j=1;j<=5;g++)
{
string str=console.readline();
float f=float.parse(str);
A[j]=f;
console.writeline("array["+j+"]"+"="+ A[j]+ "\n");
}
console.writeline("your array is :"+"\n");
for (int k=1;k<=5;k++)
{
console.writeline("array[(0)]=(1)", k , a[k]);
}
console.write("\n");
console.write("**************insertion sort************");
console.writeline("\n");
for(int p=2;p<=5;p++)
{
float temp=A [p];
int q=p-1;
while (q>0&&A[q]>temp)
{
A[q+1]=A[q];
q--;
}
A[q+1]=temp;
}
for(int q=1;q<=5;q++)
{
console.writeline("sort array[(0)] = (1)",q,A[q]);
}
console.write("\n");
console.write("*****************END*************");
console.write("\n");
console.readline();
}
}
}
پیاده سازی در c++
کد php:
#include<iostream.h>
#include<conio.h>
class insertionsort
{
public:
float A[5];
void sort(float *A);
};
void insertionsort::sort(float* A)_
{
for(int p=2;p<=5;p++)
{
float temp=A[p];
int q=p-1;
while(q>0 && A[q]>temp)
{
A[q+1]=A[q];
q--;
}
A[q+1]=temp;
}
}
int main()
{
clrscr();
float A[5];
insertrionsort IS;
cout<<"please Anter 5 Number:"<<andl;
for(int i=1;i<=5;i++)
{
int n;
cin>>n;
A[i]=n;
}
cout<<"\n";
cout<<"your array is :{";
for(int j=1;j<5;j++)
{
cout<<A[j]<<",";
}
cout<<A[5]<<"}"<<"\n";
cout<<"\n"<<"***************insertionsort*****************"<<"\n";
cout<<"\n";
IS.sort(A);
cout<<"your sorted Array As:{";
for(int k=1;k<5;k++)
{
cout<<A[k]<<",";
}
cout<<A[5]<<"}"<<"\n\;
getch();
}