Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Алгоритмично мислене

Featured Replies

От близо пет години работя като програмист и не съм имал кой знае какви проблеми да науча език или технология като точно на това много се кефех, защото доста от колегите ми в офиса учат много по-бавно от мен новите технологии. Проблема ми е, че нямам добро алгоритмично мислене, което понякога ми пречи като трябва да имплементирам нещо, което изисква повечко мислене. Не, че не се справям ама усещам, че го правя доста по-бавно от необходимото. Реших да пусна темата, за да може ако някой е бил в същото положение да каже как е развил допълнително алгоритмичното си мислене или какво  е направил. Започвам да си мисля, че програмистката професия не е за мен и че трябва да сменя професията на QA или devops например.

Решавай задачи. В нета колкото искаш сайтове и книги със задачи. Най вероятно с времето ще свикнеш да уцелваш, коя структура за кой проблем може да помогне.

преди 28 минути, whitepixel написа:

нищо чудно AI да подмени  хората-кодери тотално и глобално в близките 5-6 години

Е тогава ще има нужда от кодери за самото AI :) . Иначе и аз подкрепям старите книжки с алгоритми главно са за C/C++ но са приложими за почти всичко.

  • Автор
преди 11 минути, mr mcwolf написа:

Алгоритмично мислене и прилагане на алгоритми са коренно различни неща.

Именно! Има достатъчно книги и прочие на тема алгоритми, а аз искам да развия алгоритмичното си мислене някак.

   Предварително се извинявам , ако това което напиша е за някой СМЕШНО! Все пак веселието е хубаво нещо! Аз съм програмист , абсолютно НИКАКЪВ . Мнението ми е повече филсофско.  А то е: Математиката е наука ,която с цифри изразява променещата се материя . Алгоритъмът е израз на промяна и когато искаме да изразим дадено  действие, дадено явление ,то този израз ще е толкова по-точен , колкото в него вкараме /приложим / повече променливи величини ,които касаят явлението,действието и тези променливи са БЕЗКРАЙНО МНОГО и за това никой алгоритъм не е идеален, защото е подвластен на най-важната променлива - ПОЗНАНИЕТО! Съвършенството се постига с познание , познанието с ЧЕТЕНЕ! Така , че приятелю, ЧЕТЕНЕТО му е МАЙКАТА!:D

  • 1 година по-късно...

Ако имаше универсална формула, всеки щеше да е програмист (примерно ^^). Аз, например, не мога да реша задача, която не мога да си представя визуално и да асоциирам с нещо познато за мен. Като осъзнаеш смисъла на думата абстракция, стека вече не е само push и pop, мапа не е само key и value.

Предполагам, че звучи тъпо или объркващо, но алгоритмичното мислене се развива с богата обща култура... ако се замислиш, всичко около теб е алгоритми. ^^

Ми те хората за тфа, отдавна са измислили UML-а... Да може всеки да си нарисува картинката на решението и да види правилни ли са му абстракциите...

на ‎29‎.‎11‎.‎2017‎ г. в 13:18, lonaka написа:

алгоритмично мислене

Всеки алгоритъм е на база на някаква логика, а тя от своя страна на някакви закони. В основата е да проумеем какво ни е дадено и какво трябва да се получи.

Примерно, навремето когато изучавах въпросната дисциплина програмиране първо на учеха да правим блог схеми. Една от тях бе как да осъществим разговор по градския телефон. Запомнил съм го, защото в ежедневието ни ние ползваме някакви алгоритми, за да правим неща, а дали са правилни или не е друг въпрос, но изобщо не се замисляме.

Да, за да извлечеш някакъв алгоритъм е мисловен процес. В общия случай трябва да се тръгне от някъде.

Първо: Трябва да опознаем Обекта, Процеса и т.н. върху който ще трябва да приложим определен алгоритъм, за да стане на друг Обект, Процес и т.н. - Нарича се анализ. За него е необходимо аналитично мислене, което най-общо казано е да умеем да "дробим нещата", да гледаме какво ни е известно и какво не ни е известно.

Второ: Трябва да структурираме данните за Обекта, Процеса и т.н. Да видим на кой математически или друг модел отговарят. Образно казано това е задача за "първи клас". Да можем да разделим ябълките и крушите, но въпреки това да знаем, че са плодове. За него е необходимо синтезирано мислене, което най-общо казано е да умеем да "обединяваме нещата", да гледаме къде какво да слагаме.

Трето: Да направим въпросната Блок схема на ръка. Образно казано да си чертаем едни геометрични фигурки и надписи в тях които са свързани с едни линийки и някакви стрелки.

Кратко казано: Като децата да сме, т.е. първо да развалям нещото, а после го сглобявам. :) В началото трябва да сме любопитни, а после търпеливи. Когато обаче го разглобяваме трябва да подреждаме нещата, за да може после да се ориентираме как да го сглобим.

Алгоритмичното мислене е свързано с нашата дисциплина и способността да подреждаме нещата. Дисциплината в своята си същност е да можем да се подчиняваме.

Ето ти и една задача, за да преценя до колко имаш алгоритмично мислене:

Имаш Пет милиона евро. Какво би направил? :) Опиши го - първо, второ, трето и т.н. и да видим като краен резултат какво ще се получи. :) 

Образно казано - възприемам те като обект за изследване.

Успех!

п.п. За да се научиш на алгоритмично мислене трябва да умееш да играеш мисловно, а не чрез своето тяло. ;) 

преди 7 часа, ДИоNД написа:

Всеки алгоритъм е на база на някаква логика, а тя от своя страна на някакви закони. В основата е да проумеем какво ни е дадено и какво трябва да се получи.

Имаш Пет милиона евро. Какво би направил? :)

В Живота се получава около 70% успеваемост . Останалото зависи от невключващи се подробности , случайности...(там където са възможни и ги има).

Казано е : " Дяволът се крие в детайлите , Бог се явява в цялото . ":nono:

Т.е. Обожествяваш , но Дяволът постоянно ще ти върти номера неразбираеми всякакви ....:lol6:

..................................

Ще ги раздам от сърце , на всички крайно нуждаещи се.....Ако останат нераздадени - тогава ще му мисля......:)

На мен "кофичка кисело мляко и половин хляб на ден" са ми достатъчни .....да живея щастливо....В същност на всеки - който го умее.....:nono:

Всеки щастлив има свойството да го умножава и развива ! :nono:

 

преди 7 минути, by_chechi написа:

В Живота се получава около 70% успеваемост .

Ти пък ... 95% е ... ;) Останалите пет са за нас самите. ;) Както казваш поне за едно кисело мляко и половин хляб. ;) 

Чудно ми е къде се дяват тез 25%???? Май отиват към едни паразити ... хм ... друга тема.... 25% фира си е много ... Де да бяха крайно нуждаещите се толкова ... ;) 

Аз лично съм спретнал списък на кой ще ги дам, не на всички! То всички искат, но приоритет ми са близките хора. ;) 

Въпроса е да видим какъв е неговия списък?! ;) 

Във всеки алгоритъм се залага и един който да обработва грешките. ;) На база въпросните се правят новите ъпдейти. ;) 

Основния проблем при програмирането ще си остане структурирането на данните. Именно затова има програмни езици от различно естество, едните стъпват на структурата, а други на обекта. Затова и първо се изучава структурното програмиране, а после обектното, а това е на база известните математически модели.

Нека видим неговата логика по отношение на разпределение на даден ресурс. ;) 

на 29.11.2017 г. в 13:18, lonaka написа:

.....като програмист.......добро алгоритмично мислене, което...... изисква повечко мислене.

Способност да вникваш в същността на проблема . :nono:

....Следва да имаш разнообразен по знания и опит екип , с който да работите заедно .

Примерно във философията са "алгоритмитмите" отнасящи се за всичко !

Може би психолози са нужни , социолози , представители на точните науки в зависимост от поставената задача за решаване.....т.е тясно профилиране , само математика , информатика не стига !

Въъъх , щях да пропусна кибернетика.....:)

Ако си сам , от всичко това поне малко от малко трябва да разбираш......

преди 30 минути, ДИоNД написа:

Ти пък ... 95% е ... ;) 

Не си страдал - не знаеш.... много ти е мисленето - малко ти е практиката ! :nono:

Казано е : " Сит на гладен не вярва ! " и или " Не питай старо , питай патило ! " :nono: - това са все житейски алгоритми.....:)

преди 14 минути, by_chechi написа:

Казано е : " Сит на гладен не вярва ! " :)

И обратното: "Гладният на сития също не вярва!" ;) 

Не мисли, че съм израснал в среда без страдание. ;) 

Просто се научих и спрях. Вече мога и с два лева в джоба, но знам и с двеста какво е. ;) Знам, че капка по капка - язовир. Ай ... хм ... по модерно му .... стъпка по стъпка - път ... ;) Извървял съм доста път в безпътието и съм оставил било то пътека или някакъв селски път зад себе си по който младите да се придвижват. Дали ще бягат, ходят или т.н. по моите неща които съм оставил зависи от тях. Дали ще изберат чужди пътеки и прочие, т.е. алгоритми за придвижване за мен е без значение. По-важно е да са щастливи.

По мое мнение май автора го мързи или пък се е уморил от мислене. Нещо някой е недоволен от него, за да се чуди дали да зарязва програмирането. Иска да разбере "маята" на създаване на алгоритми.

Нека да видим дали може с двеста, а после да го питаме за двата лева ;) или как бе в миналото, как да си избършеш ЗД-ту со едно билетче от градския транспорт. ;) 

преди 33 минути, ДИоNД написа:

И обратното: "Гладният на сития също не вярва!" ;)

Това твърдение е ограничено и най-често не е вярно ! :nono:

...Тук (почти) няма "обратно" !

Гладният (ако искаш разбирай , този който не знае - гладен за знания) , като няма друг избор - Вярва ! :nono:

Гладът е причина за Вяра , а не обратното ! :nono:

....Това , сравнявайки преди и днес на всякъде по света можеш да го наблюдаваш....Примерно днес гладният вярва , че като отиде при богатия ще бъде нахранен .....

Казано е : " Сит търбух - за наука глух ! " ...и за Вяра ! - пак алгоритъм .....:lol6:

..........................

Ама ти все на обратно си "знаеш" - за програмист не ставаш ! :lol6:

.......а бе ставаш ! Ама каквото кажеш , трябва на обратно да се мисли , разбира и прави .....:lol6:

на ‎11‎.‎11‎.‎2019‎ г. в 10:00, by_chechi написа:

Ама каквото кажеш , трябва на обратно да се мисли , разбира и прави .....:lol6:

Не е така лесно да се мисли на обратно ... ;) 

https://www.kaldata.com/it-новини/българин-и-руснак-решиха-50-годишен-проб-321201.html

преди 44 минути, ДИоNД написа:

Никъде не съм писал , че е лесно ! 

Но съм писал много пъти защо хората в мнозинството си обикновено мислят само на обратно .....

Най-просто и кратко казано - защото не знаят ! 

В науката се мисли "право" , защото там се знае......"момчетата" са го направили пак "право" , ама "на обратно" , точно защото знаят ! Някои ще кажат - парадокс.....и за парадокса съм писал , как се появява . Парадокси няма - има неразбиране на същността !...

.............................

Еее , там преди доста време писах за "Ахил и костенурката"....може вече и да го няма (изтрито като старо)....

Ха ! Приятно ми беше да го намеря :

 

 

Не искам да те обиждам, но не знам как си станал програмер без алгоритмично мисле и как учиш нов език без алгоритмично мислене? Отговора е много прост: задачки. Превърташ сайтовете със задачки и нема кво да ти се опре.

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.