Amaliy matematika fakulteti


C++ Standard Library (STL) .libfayllari


Download 40.75 Kb.
bet2/3
Sana08.11.2023
Hajmi40.75 Kb.
#1757125
1   2   3
Bog'liq
1-mustaqil ish algoritm (1)

C++ Standard Library (STL) .libfayllari
.lib Ushbu mavzu ilovangizni ishlab chiqishda bog'lanishingiz mumkin bo'lgan Microsoft C ish vaqti kutubxonasi fayllari va ular bilan bog'liq kompilyator opsiyalari va preprotsessor ko'rsatmalari ro'yxatini beradi.
Ilovangizni qo'llab-quvvatlash uchun zarur bo'lgan C ish vaqti fayllarini joylashtirish haqida ma'lumot qidirsangiz, Visual C++ fayllarini qayta tarqatish bo'limiga qarang .
Agar siz C ish vaqti kutubxonasi uchun API ma'lumotnomasini izlayotgan bo'lsangiz, C ish vaqti kutubxonasi ma'lumotnomasiga qarang .

C ish vaqti .libfayllari


C ish vaqti kutubxonasi (CRT) C++ standart kutubxonasining ISO C standart kutubxonasini o'z ichiga olgan qismidir. CRT-ni amalga oshiradigan Visual C++ kutubxonalari mahalliy kodni ishlab chiqishni qo'llab-quvvatlaydi va aralash mahalliy va boshqariladigan kodlarni qo'llab-quvvatlaydi. CRT ning barcha versiyalari ko'p tarmoqli ishlab chiqishni qo'llab-quvvatlaydi. Ko'pgina kutubxonalar kutubxonani to'g'ridan-to'g'ri kodingizga ulash uchun statik ulanishni yoki kodingiz umumiy DLL fayllaridan foydalanishga ruxsat berish uchun dinamik ulanishni qo'llab-quvvatlaydi.

Loyihangizning reliz versiyasini yaratganingizda, asosiy C ish vaqti kutubxonalaridan biri ( libcmt.lib, msvcmrt.lib, msvcrt.lib) siz tanlagan kompilyator opsiyasiga (koʻp oqimli, DLL, ) qarab sukut boʻyicha bogʻlanadi /clr. Agar siz kodingizga C++ standart kutubxonasi sarlavha fayllaridan birini qo‘shsangiz, kompilyatsiya vaqtida C++ standart kutubxonasi Visual C++ tomonidan avtomatik ravishda bog‘lanadi. Masalan:
C++
Nusxalash
#include
Ikkilik moslik uchun bitta import kutubxonasi tomonidan bir nechta DLL fayllari belgilanishi mumkin. Versiya yangilanishlari nuqta kutubxonalarini , yangi kutubxona funksiyalarini taqdim qiluvchi alohida DLL-larni taqdim etishi mumkin. Misol uchun, Visual Studio 2017 15.6 versiyasi msvcp140_1.dllqo’shimcha standart kutubxona funksiyalarini qo’llab-quvvatlash uchun ilovaning ikkilik interfeysini (ABI) buzmasdan qo’llab-quvvatlash uchun taqdim etilgan msvcp140.dll. Visual Studio 2017 15.6 versiyasi uchun asboblar to’plamiga kiritilgan msvcprt.libimport kutubxonasi ikkala DLL-ni qo’llab-quvvatlaydi va ushbu versiya uchun vcredist ikkala DLL-ni ham o’rnatadi. Yuborilgandan so’ng, nuqta kutubxonasi sobit ABIga ega va hech qachon keyingi nuqta kutubxonasiga bog’liq bo’lmaydi.
Har bir dasturchi bilishi kerak bo’lgan eng yaxshi 25 ta algoritm

To’g’ri ma’lumotlar tuzilishini tanlash kabi standart algoritmlarni yaxshi bilish ham bir xil darajada muhimdir . Quyida har bir dasturchi va informatika talabasi bilishi kerak bo‘lgan eng yaxshi 25 ta algoritm ro‘yxati keltirilgan.




  1. Binary Search Algorithm

  2. Breadth First Search (BFS) Algorithm

  3. Depth First Search (DFS) Algorithm

  4. Merge Sort Algorithm

  5. Quicksort Algorithm

  6. Kruskal’s Algorithm

  7. Floyd Warshall Algorithm

  8. Dijkstra’s Algorithm

  9. Bellman Ford Algorithm

  10. Kadane’s Algorithm

  11. Lee Algorithm

  12. Flood Fill Algorithm

  13. Floyd’s Cycle Detection Algorithm

  14. Union Find Algorithm

  15. Topological Sort Algorithm

  16. KMP Algorithm

  17. Insertion Sort Algorithm

  18. Selection Sort Algorithm

  19. Counting Sort Algorithm

  20. Heap Sort Algorithm

  21. Kahn’s Topological Sort Algorithm

  22. Huffman Coding Compression Algorithm

  23. Quickselect Algorithm

  24. Boyer–Moore Majority Vote Algorithm

  25. Euclid’s Algorithm

Saralash algoritmi massiv yoki roʻyxat kabi toʻplam elementlarini maʼlum tartibda joylashtiradigan algoritmdir. Eng ko'p ishlatiladigan tartiblar son tartibi va leksikografik tartibdir. Samarali saralash boshqa algoritmlardan foydalanishni optimallashtirish uchun muhim ahamiyatga ega, masalan, saralangan to'plamlarning to'g'ri ishlashini talab qiluvchi qidiruv va birlashtirish algoritmlarida. Bundan tashqari, ko'pincha ma'lumotlarni normallashtirish va inson o'qiy oladigan mahsulot ishlab chiqarish uchun foydalidir. Aniqrog'i, chiqish ikkita shartga javob berishi kerak (i) chiqish kamaymaydigan tartibda (har bir element kerakli umumiy tartib bo'yicha oldingi elementdan kichik emas) va (ii) chiqish almashtirish yoki qayta tartiblash, kirishdan.
Informatika fanida qo'llaniladigan saralash algoritmlari odatda quyidagilar bo'yicha tasniflanadi:
Ro'yxat hajmi bo'yicha hisoblash murakkabligi (eng yomon, o'rtacha va eng yaxshi holat) (n) - Oddiy tartiblash algoritmlari uchun yaxshi xatti-harakatlar O(n log n) va yomon xatti-harakatlar O(n2). Turlash uchun ideal harakat O(n). Faqat mavhum kalit taqqoslash operatsiyasidan foydalanadigan tartiblash algoritmlari odatda o'rtacha kamida O(n log n) taqqoslashni talab qiladi.
Xotiradan foydalanish (va boshqa kompyuter resurslaridan foydalanish) - Xususan, ba'zi tartiblash algoritmlari "o'z joyida" bo'lib, tartiblangan elementlardan tashqari kam xotira kerak, boshqalari esa vaqtinchalik ma'lumotlarni saqlash uchun yordamchi joylarni yaratishi kerak.
Barqarorlik - Barqaror saralash algoritmlari teng kalitlarga (ya'ni qiymatlarga) ega bo'lgan yozuvlarning nisbiy tartibini saqlaydi. Ya'ni, saralash algoritmi barqaror bo'ladi, agar har doim bir xil tugmachali ikkita R va S yozuvlari mavjud bo'lsa va R asl ro'yxatda S dan oldin paydo bo'lsa, R tartiblangan ro'yxatda S dan oldin paydo bo'ladi.
Taqqoslash tartibi bo'ladimi yoki yo'qmi - Taqqoslash tartiblash ma'lumotlarni faqat ikkita elementni taqqoslash operatori bilan solishtirish orqali tekshiradi.
Umumiy tartiblash usuli - qo'shish, almashish, tanlash, birlashtirish va hokazolardan foydalanadimi.
Jadval 9.19.1 ayrim saralash algoritmlari va ularning tasnifi haqida qisqacha ma'lumot beradi. Agar teng elementlarni ajratib bo'lmaydigan bo'lsa, masalan, butun sonlarda, barqarorlik muammo emas. Shu bilan birga, quyidagi juft sonlarni birinchi koordinatalari bo'yicha tartiblash kerak deb faraz qilaylik: (4, 1) (3, 1) (3, 7) (5, 6). Bunday holda, ikkita turli xil natijalar bo'lishi mumkin, ya'ni bir xil kalitlarga ega bo'lgan yozuvlarning nisbiy tartibini saqlaydigan va quyida ko'rsatilgandek emas:

Download 40.75 Kb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling