1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

Tất cả về Tìm kiếm và sắp xếp

Thảo luận trong 'C/C++' bắt đầu bởi small ant, 14 Tháng mười một 2010.

  1. small ant Well-Known Member

    Số bài viết: 2,827
    Đã được thích: 88
    Điểm thành tích: 48
    Giới tính: Nữ
    Trong C học ở trường thì mình thấy vấn đề hay gặp nhất là tìm kiếm và sắp xếp. Hôm nay mình xin mạn phép giới thiệu cho các bạn một số vấn đề thường gặp, các thuật toán, chương trình về tìm kiếm và sắp xếp.
    Đầu tiên mình xin đi vào vấn đề tìm kiếm

    1.Tìm kiếm tuyến tính
    Là một kỹ thuật tìm kiếm rất đơn giãn và cổ điển. Thuật toán tiến hành so sánh x lần lươt với phần tử thứ nhất, thứ hai, ....của mãng a cho đến khi gặp phần tử có khóa cần tìm hoặc đã tìm hết mảng mà không thấy x. Các bước tiến hành như sau.
    B1: i=1; //bắt đầu từ phần tử đầu tiên của dãy.
    B2: So sánh a với x, có 2 khả năng:
    + a = x ; tìm thấy x ở vị trí i -> dừng
    + a khác x : sang bước 3
    B3: i tăng thêm một đơn vị ( i=i+1) // sét tiếp phần tử kế tiếp trong mảng
    Nếu i > n: hết mảng, không tìm thấy. Dừng
    Ngược lại: lặp lại bước 2.

    Các bạn tải code ở file đính kèm nha.

    2.Tìm kiếm nhị phân
    Ý tưởng của của giải thuật là tại mỗi bước tiến hành so sánh x với phần tử nằm ở vị trí giữa của dãy tìm kiếm hiện hành, dựa vào kết quả so sánh này để quyết định giới hạn dãy tìm kiếm ở bước kế tiếp là nữa trên hay nữa dưới của dãy tìm kiếm hiện hành.

    Các bạn tải file ở phần đính kèm nha.

    Còn nữa
  2. levantrong New Member

    Số bài viết: 1
    Đã được thích: 0
    Điểm thành tích: 0

Chia sẻ trang này