using namespace std;
template <typename T>
void sort(T list[], int listSize)
{
for (int i = 0; i < listSize; i++)
{
// list[i..listHajm-1] dagi minimumni topish
10. T currentMin = list[i];
11. int currentMinIndex = i;
12. for(int j = i + 1; j < listSize; j++)
13. {
14. if (currentMin > list[j])
15. {
16. currentMin = list[j];
17. currentMinIndex = j;
18. }
19. }
20. // list[i] ni list[joriyMinimumIndeks] bilan almashtirish, agar zarur bo`lsa;
21. if(currentMinIndex != i)
22. {
23. list[currentMinIndex] = list[i];
24. list[i] = currentMin;
25. }
26. }
27. }
28. template <typename T>
29. void printArray(const T list[], int listSize)
30. {
31. for (int i = 0; i < listSize; i++)
32. {
33. cout << list[i] << " ";
34. }
35. cout << endl;
36. }
37. int main()
38. {
39. int list1[] = {3, 5, 1, 0, 2, 8, 7};
40. sort(list1, 7);
41. printArray(list1, 7);
42. double list2[] = {3.5, 0.5, 1.4, 0.4, 2.5, 1.8, 4.7};
43. sort(list2, 7);
44. printArray(list2, 7);
45. string list3[]={"Atlanta", "Denver", "Chicago", "Dallas"};
46. sort(list3, 4);
47. printArray(list3, 4);
48. return 0;}
Natija:
Bu dasturda ikkita funksiya shaboni aniqlangan. sort funksiya shabloni (5-30-qatorlar) massiv elementlari turini belgilab olish uchun T parametridan foydalanadi. double parametri umumiy T parametri bilan almashtirilganligi hisobga olinmaganda, bu funksiya tanlabSaralash funksiyasining o`zginasi.
Do'stlaringiz bilan baham: |