![]() 2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
1 | |
Практические задания из собеседований31.05.2011, 10:02. Показов 68291. Ответов 44
Метки нет Все метки)
(
Предлагаю в данной теме выкладывать интересные и не очень практические задачи, которые попадаются на собеседованиях.
Я начну: 1. Написать функцию, определяющую является ли заданное число степенью двойки. 2. Написать функцию, определяющую содержит ли односвязный список циклы (например, последний ссылается на второй). Просьба решения выкладывать под CUT'ом.
15
|
|
31.05.2011, 10:02 | |
Ответы с готовыми решениями:
44
Где можно найти практические задания по с++ Где брать практические задания и как лучше практиковатся по ним? Задания с собеседований Практические задания по C# |
![]() 5827 / 3478 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
31.05.2011, 10:12 | 2 | |||||
1. Для натуральных чисел
15
|
![]() 5827 / 3478 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
10.06.2011, 17:49 | 4 | |||||
2. Написать функцию, определяющую содержит ли односвязный список циклы (например, последний ссылается на второй).
Если решать в лоб - односвязный список не содержит циклов, если все указатели (которые получаются при последовательном обходе узлов списка в одну сторону) на его узлы уникальны:
Есть более интересные решения?
7
|
![]() 2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
10.06.2011, 19:54 [ТС] | 5 |
Nameless One, есть, для решения этой задачи не нужна дополнительная памать, кроме двух указателей на узел списка ничего не потребуется.
2
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
10.06.2011, 19:59 | 6 | |||||
Nameless One, Пожалуй вот тут бы можно было бы и проще.
0
|
![]() 2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
10.06.2011, 23:03 [ТС] | 8 |
fasked, в точку.
0
|
![]() 1068 / 847 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
||||||
10.06.2011, 23:48 | 9 | |||||
Подобный цикл режет глаз!
Лучше так:
1
|
![]() |
|
20.08.2011, 16:05 | 11 |
Недавно побывал на собеседовании. Многие вопросы были из разряда не особо интересных, такие как написать функцию добавления значения в упорядоченный список, перевод строки в число и т.д.
Один из вопросов относился к программированию на С/С++ меньше, но отличался от других. Звучал примерно так: "Что такое мьютекс? Как бы Вы реализовали мьютекс. Формальные описания не обязательны".
4
|
![]() 2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
21.08.2011, 13:40 [ТС] | 12 |
Вспомнил одно из заданий на многопоточность:
Разработать потокобезопасную реализацию паттерна "Одиночка".
4
|
![]() |
|||||||||||
21.08.2011, 14:04 | 13 | ||||||||||
банально
![]()
10
|
Делаю внезапно и красиво
![]() 1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
24.08.2011, 11:06 | 14 |
Концептуально правильнее будет на scoped_ptr заменить, ведь копироваться он не может по определению.
Добавлено через 3 минуты Скорее бы поддержка C++0x в MSVC появилась...
2
|
![]() 3952 / 1807 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
08.06.2012, 17:15 | 15 |
Тоже недавно был на собеседовании... Вопрос был ещё чуть коварнее: "Чем отличается мьютекс от семафора"... Много скучных вопросов по ООП.
А потом вот такое задание:
0
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
08.06.2012, 21:05 | 16 |
MikeSoft, Без темплейтов конечно печально, но: базовый класс, содержащий чисто-виртуальный метод print() или что-нибудь вроде, три производных класса от данного, в списке хранится указатель на базовый класс. Или реализовать нечто вроде boost::variant.
http://liveworkspace.org/code/... 15eeab593d
0
|
Делаю внезапно и красиво
![]() 1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
||||||
09.06.2012, 06:28 | 17 | |||||
Или, чтобы не думать
0
|
![]() 3952 / 1807 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
06.07.2012, 09:57 | 18 | |||||
ForEveR, собственно говоря, да, но меня что-то толкнуло на путь, примерно такой, как предложил Deviaphan.
![]()
0
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
06.07.2012, 19:25 | 19 |
MikeSoft, Ну свитч по типам крайне рекомендуют не использовать. Не дело это в языке высокого уровня свитч по типам устраивать)
2
|
![]() 3952 / 1807 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
07.07.2012, 15:16 | 20 |
А вот тут не согласен. Добавлением значения в список занимается перегруженная ф-ция Add.
Она же и переписывает значение типа eItemType (перечисление из трёх элементов). Далее switch используется лишь для проверки "а какой же из перегруженных функций было выполнено добавление?", что совсем не запрещено.
0
|
07.07.2012, 15:16 | |
07.07.2012, 15:16 | |
Помогаю со студенческими работами здесь
20
Практические задания C# Изучение C# и практические задания Практические задания, нейросети Коллоквиум, практические задания Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |