bài tập C++

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

bài tập C++

Bài gửi by tieuthudongdanh9x on 29/4/2012, 22:57

Viết chương trình con sắp xếp một danh sách chứa các số nguyên, trong các trường hợp:
- Danh sách được cài đặt bằng mảng(DS đặc)
- Danh sách được cài đặt bằng con trỏ(DS liên kết)



void SapXepTang(DanhSach DS)
{
int tam;
for(int i=1;i for(int j=i+1;j<=DS.n;j++)
if(DS.PhanTu[i]>DS.PhanTu[j])
{
swap(DS.PhanTu[i],DS.PhanTu[j]);
}
}

void SapXepTang(List &L)
{
Node *tam1=new Node;
Node *tam2=new Node;
tam1=L.First;
while(tam1->Right->Right!=L.Last) //chay tu Node dau tien cho den Node ke cuoi
{
tam1=tam1->Right;
while(tam2->Right!=L.Last) //chay tu Node tam den Node cuoi
{
tam2=tam1->Right;
if(tam1->PhanTu > tam2->PhanTu)
swap(tam1,tam2);
}
}

}

Bài 5. Viết chương trình con thêm 1 phần tử trong danh sách liên kết đã có thứ tự sao cho ta vẫn có 1 danh sách có thứ tự.

void SapXepTang(DanhSach DS)
{
int tam;
for(int i=1;i for(int j=i+1;j<=DS.n;j++)
if(DS.PhanTu[i]>DS.PhanTu[j])
{
swap(DS.PhanTu[i],DS.PhanTu[j]);
}
}


void ThemPhanTu(List &L,int pt)
{
Node *tam=new Node;
tam=L.First;
while(tam->Right!=L.Last&&tam->PhanTu < pt) //chay tu Node dau tien cho den Node cuoi
{ //Dieu kien dung la pt lon hon PhanTu tai Node tam
tam=tam->Right;
//tim vi tri thich hop
if(tam->PhanTu>=pt && tam->Right->PhanTu<=pt)
{
//chen vao vi tri vua tim duoc
tam->Right->Left=tam;
tam->Left->Right=tam;
tam->Left=tam->Left->Right;
}
}

tieuthudongdanh9x

Tổng số bài gửi : 6
Join date : 29/04/2012
Age : 26

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang


 
Permissions in this forum:
Bạn không có quyền trả lời bài viết