Վերջերս ես հանդիպեցի դրական թվերի տեսակավորման իսկապես տարօրինակ ալգորիթմի։ Այն կոչվում է քնի տեսակավորում: Եվ զարմանալիորեն աշխատում է: Այսպիսով, ես որոշեցի սա իրականացնել c plus plus-ում և պատրաստել ձեռնարկ: Այս ձեռնարկում մենք կիրականացնենք այս ալգորիթմը c plus plus-ում: Դա անելիս մենք կսովորենք.
- Ինչպես բազմաթելեր կատարել c plus plus-ում
- Ինչպես ստեղծել պատահական թվեր c-ում գումարած գումարած
- Ինչպես կազմել կոդը Linux-ում
- std::vectors-ի օգտագործումը
- Օգտագործեք std::shared_ptr և std::make_shared()
Ալգորիթմը բավականին պարզ է և կարելի է նկարագրել ընդամենը մեկ տողով. Ա չտեսակավորված A ցանկի յուրաքանչյուր x տարրի համար գործարկեք ծրագիր, որը քնում է x տևողությամբ և դրանից հետո տպում է x: Ստացա՞ք: դա? Տարօրինակ չէ՞ Տեսնենք դրա կեղծ կոդը:
կեղծ_կոդ https://gist.github.com/582acc5c51653f81ad63c4df19085ab3
Չնայած կեղծ կոդը պարզ է թվում: Այնուամենայնիվ, բազմաշերտ հատվածը մի փոքր բարդացնում է այն: Այսպիսով, եկեք սուզվենք այս ալգորիթմի իրականացման մեջ c plus plus-ում:
sleep_sort.cpp
https://gist.github.com/bed930ad0ce90d74aa105e0b80040214
Կոդը կազմելով Linux-ում.
https://gist.github.com/c41fb0c8552aad6545ce7fd11970be98
Եվ ահա արդյունքը.
https://gist.github.com/18f6f2ac066b346f5ee222480e661636
Սկզբնապես հրապարակվել է gist.github.com-ում: