|
|
|||||||||||||||||||||||||
Тестовое задание на Junior C++ dev26.07.2013, 18:40. Показов 65230. Ответов 67
Метки нет (Все метки)
Доброго времени суток.
Неделю назад ради интереса отправил свое резюме в одну компанию, куда требуются с++ юниоры. Получил от них тестовое задание. Я ожидал, что они мне откажут (опыта то у меня действительно мизер), но хотелось бы узнать у более опытных людей, какое решение задач "ожидает" компания от соискателя для продолжения с ним отношений. Далее идет 4 задачи и мой вариант решения каждой из них.
0
|
|||||||||||||||||||||||||
| 26.07.2013, 18:40 | |
|
Ответы с готовыми решениями:
67
Тестовое задание от работадателя. Хотелось бы услышать критику.
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 26.07.2013, 20:25 | |
|
Мимино, можем пройтись по битам целого числа и не начинать запись в строку до тех пор, пока не встретим первую единицу.
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 26.07.2013, 20:33 | ||||||
0
|
||||||
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
| 26.07.2013, 20:34 | |
|
Кастую в тред кого-нибудь умного, кто скажет, что рекурсия всегда хуже, когда возможна итерация)
Добавлено через 47 секунд
0
|
|
|
|
||
| 26.07.2013, 20:34 [ТС] | ||
|
0
|
||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 26.07.2013, 20:34 | |
|
0x10, Зависит от требований эффективности, логичности все же. qsort например итеративно писать несколько сложнее, чем рекурсивно. Или обход дерева.
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||||
| 26.07.2013, 21:12 | ||||
|
Сейчас просто набросал эту функцию - получилось 23 строки, из которых 12 - фигурные скобки и пустые строки. Не думаю, что это слишком громоздко. Я допускаю, что возможно несколько реализаций, но лично мне ближе рассматривать такую функцию как предельный случай выборки без повторений, когда размер выборки равен размеру массива. Ну и два рандома для одной операции - это в принципе не очень хорошо, поскольку числа все-таки он генерирует псевдослучайные. Добавлено через 7 минут Мимино, про перемешивание... Это, конечно, крайний и не особо возможный случай, но представьте, что генератор тупит и всегда выдает константу. Тогда по завершению цикла массив вообще не перемешается. Добавлено через 7 минут Хотя с последним уже меня заносит - такие случаи вообще не имеет смысла рассматривать.
1
|
||||
|
|
||
| 26.07.2013, 21:14 [ТС] | ||
Вот в других компаниях требования четко стоят: сделать рекурсивно или сделать итеративно... или просят реализовать алгоритм определенной сложности... А тут делай как хочешь, а мы потом посмотрим Вот поэтому у меня и возник вопрос: посмотрев на это действительно можно понять, что я не гожусь даже в подмастерье? И если да, то по каким критериям. Критерии мы обсудили, но вопрос в том, достаточно ли их для принятия решения об отказе? У кого опыт в этом деле есть?
0
|
||
|
88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
|
|
| 26.07.2013, 21:15 | |
|
а что стандартную библиотеку нельзя было использовать?
![]() там некоторые задания на 5 строчек кода.
0
|
|
|
|
|
| 26.07.2013, 21:20 | |
|
В первой задаче от вас ожидали работу с битами памяти с красивым алгоритмом, а может и не одним, во второй это модификация сортировки выбором в один цикл, а вы намудрили, конечно, в четвертой банально вычислить
1
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||
| 26.07.2013, 21:28 | ||
|
0
|
||
|
|
||
| 26.07.2013, 21:35 [ТС] | ||
|
Всем спасибо, ошибки учел, буду работать над собой
0
|
||
|
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
||||||
| 26.07.2013, 21:50 | ||||||
|
на что я смотрю:
сперва поверхностно. тут на первом плане форматирование кода. в целом аккуратненько. но int ind1, ind2, tmp; переменные желательно юзать поближе к месту, где они понадобились. и инициализировать. не экономте на строчках. глазу сложнее выцепить из кода место появления переменной, если они вот так в куче. while (_values[i] < p) i++; - то же самое. условие цикла и тело в одной строке. неудобно читать, неудобно дебажить. далее увидел new int *result = new int[maxValue]; тут имеем возможность получить утечку. всегда используйте RAII. отсутствует проверка входных данных. есть потенциальные обращения по нулевому укзателю, и деление на ноль. не использование STL считаю минусом.
Задания дурацкие, мало что по ним можно понять о кандидате. отказать могли по разным причинам, не обязательно из-за кода.
0
|
||||||
|
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
|
||||||
| 26.07.2013, 22:11 | ||||||
|
1, 2 и 4 в кратце решил бы так:
1
|
||||||
| 26.07.2013, 22:11 | |
|
Помогаю со студенческими работами здесь
40
Тестовое задание для трудоустройства Написать ответы на тестовое задание при приёме на работу (исключения, sizeof, mutex) Тестовое задание Тестовое задание от компании Exness Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|