Loading...
Dimitar.Stoyanov avatar Dimitar.Stoyanov 2 Точки

Здравейте това е моето домашно на C# досега това съм написал доста се помъчих с този OrderedSet на 4-та задата. 

Скоро ще е решена на линка на github-a ми. Интересното е че дървета а и другите структори от данни ги има в MSDN като готов код и може да се видят. Реално на практика в живота няма да ни се налага да имплементираме структури от данни освен ако не работим с език които не ги е имплементирал. Идеята е да разберем как работят различните видове структури от данни от всички тези домашни и да развиен алгуритмично мислене. 

https://msdn.microsoft.com/en-us/library/ms379572(v=vs.80).aspx това е линк на бинарни дървета в MSDN 

https://github.com/DimitarStoyanovVictory/Data-Structures/tree/master/Data-Structures-Homework06-DictionariesHashTablesSets - Домашното с моята имплементация на бинарните дървета, вярвам че доста добре се получи отворен съм за коментари на това как да се подобри.

0
dobribozhilov avatar dobribozhilov -11 Точки

Този курс няма абсолютно никакъв смисъл от практическа гледна точка. Всички тези неща ги има готови и разработени от големи професионалисти, оптимизирани във всяко едно отношение. Ползват се на готово. Този курс по същество е някакъв вид академично занимание, което е по-скоро математика и логика, отколкото прогамиране. Аз лично участвам, защото ми доставя удоволствие да решавам подобни задачи, а не защото има някакъв смисъл. Дори, бих казал, че решавам задачите не по най-добрия начин, просто защото не съм чак толкова напреднал в C# и не знам всички възможности на езика. Така някой път се получава доста обемен и изумяващ код, просто защото не съм знаел за някоя по-проста готова функция. Но логически и математически, задачите са решени и е приятно да се случи. За съжаление не ми стига времето и понякога решавам само най-сложната задача.

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

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

-1
08/08/2015 19:01:57
HPetrov avatar HPetrov 822 Точки

@dobribozhilov
Ако ще се водим на принципа "някой вече го е измислил/написал" давай да ходим на нивата да берем домати и краставици. Това, че вече има нещо под някаква форма не значи, че е то е толкова перфектно и несравнимо. Не се знае дали утре няма ти да измислиш нещо много по-добро от това, което вече го има. А в рамките на този курс ако мисли някой, че не е важно как работят структурите и алгоритмите от зад, какъв performance имат и прочие съвсем учтиво им предлавам да отиват да правят сайтове (с извинение). За да работиш с нещо наистина не ти е нужно да знаеш всичко как работи отзад, но за да работиш ефективно и на много високо ниво вече трябва да знаеш всичко, което е под капака. Колкото повече знаеш, толкова по-добър си ;)

0
dobribozhilov avatar dobribozhilov -11 Точки

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

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.