| Đố một bài toán, xếp mảng | |
|
|
Tác giả | Thông điệp |
---|
littlelee Admin
Tổng số bài gửi : 415 Join date : 20/12/2009 Age : 29 Đến từ : Nghĩa địa
| Tiêu đề: Đố một bài toán, xếp mảng Mon 08 Mar 2010, 20:49 | |
| Hì hì, vì đang nói đến xếp mảng mới nhớ đến bài này. Bài hay tỉ nha ^^.
Cho hai mảng a và b đã xếp tăng dần rồi. Hai mảng có số lượng phần tử có thể khác nhau. Hãy chỉ dùng một vòng lặp, loại nào cũng được, để gộp hai mảng trên vào mảng c theo đúng thứ tự tăng dần.
Cố gắng suy nghĩ nha. | |
|
| |
hoangtin14 Mèo con
Tổng số bài gửi : 96 Join date : 08/02/2010 Age : 29 Đến từ : Bình Định
| Tiêu đề: Re: Đố một bài toán, xếp mảng Mon 08 Mar 2010, 20:55 | |
| nếu có một số phần tử của mảng b trùng với một số phần tử của mảng a thì sao? Bỏ qua hay xếp vào lun. Nếu xếp vào luôn thì ta có thể làm như sau: k:=1; cho vòng lặp for a[i] chạy từ a[1] đến a[n] begin xét b[k] nếu <= a[i] và > a[i+1] thì chèn vào còn ko thì thui. inc[k];
đó chỉ là ý tưởng thui thực tế còn phải xét mảng nào dài hơn nữa^^ | |
|
| |
littlelee Admin
Tổng số bài gửi : 415 Join date : 20/12/2009 Age : 29 Đến từ : Nghĩa địa
| Tiêu đề: Re: Đố một bài toán, xếp mảng Mon 08 Mar 2010, 21:03 | |
| Nếu trùng thì cho vô luôn chứ. Mảng c sẽ só số phàn tử bằng tổng số phần tử của cả hai mảng a và b. | |
|
| |
littlelee Admin
Tổng số bài gửi : 415 Join date : 20/12/2009 Age : 29 Đến từ : Nghĩa địa
| Tiêu đề: Re: Đố một bài toán, xếp mảng Mon 08 Mar 2010, 21:04 | |
| Bạn suy nghĩ gần đúng rồi đó, cố gắng tiếp nha. Còn vài bài kìa. | |
|
| |
hoangtin14 Mèo con
Tổng số bài gửi : 96 Join date : 08/02/2010 Age : 29 Đến từ : Bình Định
| Tiêu đề: Re: Đố một bài toán, xếp mảng Mon 08 Mar 2010, 21:09 | |
| thì chỉ là ý tưởng thui mà. Thêm vài dòng lệnh nữa thì ổn. | |
|
| |
littlelee Admin
Tổng số bài gửi : 415 Join date : 20/12/2009 Age : 29 Đến từ : Nghĩa địa
| Tiêu đề: Re: Đố một bài toán, xếp mảng Tue 09 Mar 2010, 12:23 | |
| Không đâu, với thuật toán như vậy thì ko chạy được đâu. Trong bài này nếu làm vòng lặp biết trước số lần là sai rồi đó. | |
|
| |
administrators Gà nhỏ
Tổng số bài gửi : 29 Join date : 15/03/2010
| Tiêu đề: Re: Đố một bài toán, xếp mảng Wed 17 Mar 2010, 20:47 | |
| Dùng vòng lặp xác định cũng được mà (mặc dù không phê lắm). Làm cho bạn coi nè!
i:=0; j:=0; For k:=1 to n+m do if (i=n) then begin inc(j); c[k]:=b[j]; end else if (j=m) then begin inc(i); c[k]:=a[i]; end else if a[i+1] <= b[j+1] then begin inc(i); c[k]:=a[i]; end else begin inc(j); c[k]:=b[j]; end;
Viết chơi cho vui thôi (mục đích là nhìn vào cho dễ hiểu) chứ nếu tối ưu mã lại thì chỉ khoảng 5 dòng lệnh mà thôi. | |
|
| |
littlelee Admin
Tổng số bài gửi : 415 Join date : 20/12/2009 Age : 29 Đến từ : Nghĩa địa
| Tiêu đề: Re: Đố một bài toán, xếp mảng Thu 18 Mar 2010, 14:30 | |
| Uhm, nếu đó là mô phỏng của thuật toán, chứ ko thì...không ít vậy. Nếu chơi gian lận, viết xong, gộp hết vô vài dòng thì ko tính. chương trình phải tường minh kia | |
|
| |
Sponsored content
| Tiêu đề: Re: Đố một bài toán, xếp mảng | |
| |
|
| |
| Đố một bài toán, xếp mảng | |
|