• O’nlab o’q izlash
  • Burchak tekshirish
  • DFS(Depth-First Search) va BFS(Breadth-First Search)
  • Hash izlash
  • Fizika-matematika




    Download 0,59 Mb.
    bet7/7
    Sana17.12.2023
    Hajmi0,59 Mb.
    #121887
    1   2   3   4   5   6   7
    Bog'liq
    Abdullayeva Shahrizoda. Saralash va izlash

    Tezkor saralash:

    static int TanlanganElementniJoylashtirish(int[] royxat, int bosh, int oxir)
    {
    int tanlangan = royxat[oxir];
    int i = (bosh - 1);

    for (int j = bosh; j < oxir; j++)


    {
    if (royxat[j] <= tanlangan)
    {
    i++;

    // Al


    1. O’nlab o’q izlash:

    static int OnlabOqIzlash(int[] royxat, int izlanayotgan)
    {
    for (int i = 0; i < royxat.Length; i++)
    {
    if (royxat[i] == izlanayotgan)
    return i; // Ma'lumot topildi
    }
    return -1; // Ma'lumot topilmadi
    }

    1. Burchak tekshirish:

    static int BurchakTekshirish(int[] royxat, int izlanayotgan)
    {
    int bosh = 0;
    int oxir = royxat.Length - 1;

    while (bosh <= oxir)


    {
    int o'rtacha = (bosh + oxir) / 2;

    if (royxat[o'rtacha] == izlanayotgan)


    return o'rtacha; // Ma'lumot topildi

    if (royxat[o'rtacha] < izlanayotgan)


    bosh = o'rtacha + 1;
    else
    oxir = o'rtacha - 1;
    }

    return -1; // Ma'lumot topilmadi


    }

    1. DFS(Depth-First Search) va BFS(Breadth-First Search):

    using System;
    using System.Collections.Generic;

    class Graph


    {
    private int tugunlarSoni;
    private List[] ko'rsatkichlar;

    public Graph(int tugunlarSoni)


    {
    this.tugunlarSoni = tugunlarSoni;
    ko'rsatkichlar = new List[tugunlarSoni];
    for (int i = 0; i < tugunlarSoni; ++i)
    ko'rsatkichlar[i] = new List();
    }

    public void Qo'shish(int boshlang'ich, int tugun)


    {
    ko'rsatkichlar[boshlang'ich].Add(tugun);
    }

    public void DFS(int tugun)


    {
    bool[] bezilar = new bool[tugunlarSoni];
    DFSRek(tugun, bezilar);
    }

    private void DFSRek(int tugun, bool[] bezilar)


    {
    bezilar[tugun] = true;
    Console.Write(tugun + " ");

    foreach (int i in ko'rsatkichlar[tugun])


    if (!bezilar[i])
    DFSRek(i, bezilar);
    }

    public void BFS(int tugun)


    {
    bool[] bezilar = new bool[tugunlarSoni];
    Queue queue = new Queue();

    bezilar[tugun] = true;


    queue.Enqueue(tugun);

    while (queue.Count != 0)


    {
    tugun = queue.Dequeue();
    Console.Write(tugun + " ");

    foreach (int i in ko'rsatkichlar[tugun])


    {
    if (!bezilar[i])
    {
    bezilar[i] = true;
    queue.Enqueue(i);
    }
    }
    }
    }
    }

    1. Hash izlash:

    static int HashIzlash(Dictionary dictionary, int izlanayotgan)
    {
    if (dictionary.ContainsKey(izlanayotgan))
    return dictionary[izlanayotgan];
    else
    return -1; // Ma'lumot topilmadi
    }



    Download 0,59 Mb.
    1   2   3   4   5   6   7




    Download 0,59 Mb.