-
12-05-2011, 05:12 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
tìm số lớn nhì trong Danh Sách Liên Kết Đơn
em đang bí bài tập tìm số lớn nhì trong Danh Sách Liên Kết Đơn.Anh em nào biết chỉ em với.thanks nhiều ạh
View more random threads:
- In danh sách cán bộ theo từng đơn vị???
- Thay đổi giá trị sau mỗi lần chạy
- làm sao để xuất ra phần tử lõm trong mảng 2 chiều??
- Một vài vấn đề cần trợ giúp
- Vấn đề nhập xuất file trong lập trình C++?
- Tối ưu trong lập trình nhúng
- Các bạn ơi hướng dẫn mình bài này với
- Cài đặt mongoDB c++ driver trên win 8 64 bit
- khi nào dùng %c khi nào dùng %s trong lệnh printf();
- Giúp Ghép 2 mảng so le với nhau
-
12-05-2011, 05:19 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi duongvannam
Tiếp đến, tìm phần tử lớn nhì như sau: ghán phần tử đầu tiên trong ds là phần tử lớn nhì (lonnhi), tiếp đến duyệt ds, nếu có phần tử nào mà lớn hơn lonnhi và khác lớn nhất thì ghán phần tử đó là lonnhi
int lonnhi=p->key;
Mã:while (p!=NULL) { if(lonnhi<p->key && p->key!=lonnhat) lonnhi=p->key; p=p->next; }
-
13-05-2011, 08:46 AM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thuật toán trên sai. Khi tìm giá trị lớn nhất có thể khởi đầu bằng trị của phần tử đầu tiên. Nhưng khi dùng cách này cho phần tử lớn nhì sẽ bị lỗi nếu phần tử đầu tiên có trị lớn nhất.
Nếu thực ý muốn tìm giá trị lớn nhất trước rồi mới tìm giá trị lớn nhì thì người ta dùng hàm giá trị lớn kế tiêp. Như vậy có thể mở rộng ra dùng hàm để tìm đến giá trị lớn thứ k.
int soLonNhat = giatrilonketiep(lst, 999999999); // trả về giá trị lớn nhất và nhỏ hơn tham thứ hai
int soLoNhi = giatrilonketiep(lst, soLonNhat);
-
13-05-2011, 09:01 AM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi VoTichSu
-
13-05-2011, 03:47 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thuật toán này tôi đã chỉ mấy lần rồi.
Tìm cả hai sô lớn nhất và lớn nhì cùng một lúc.
Mã:// chôm code của VB lonnhi = SORATNHO; lonnhat = lonnhi+1; while (p!=NULL) { if (p->key > lonnhat) { lonnhi = lonnhat; lonnhat = p->key; } else if(p->key > lonnhi) lonnhi=p->key; p=p->next; } // nếu sau vòng lặp, lonnhi <= SORATNHO+1 là ds này không có số lớn nhì
-
13-05-2011, 06:41 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
em có đoạn code giá trị lớn nhất thế này.
Mã:int giatrilonnhat(List l) { Node *p=l.head; int max=p->info; while (p!=NULL) { p=p->next; if (p->info>max) max=p->info; } return max; }
Mã:int giatrilonnhi(List l) { Node *p=l.head; int max=p->info; int lonnhi=p->info; while (p!=NULL) { p=p->next; if (p->info>max) max=p->info; if(lonnhi<p->info && p->info!=max) lonnhi=p->info; p=p->next; } return lonnhi; }
Ngọc Bích xanh bản chất thuộc dòng đá đá hoa (jade). Và cẩm thạch là tên gọi chung của ngọc bích. Vì thực chất chúng thuộc dòng đá đa khoáng được hình thành từ chất Silicat dưới dạng dioxy. Ngọc bích...
Chia sẻ Vòng tay ngọc bích xanh là...