Раскрытие информации: Этот пост содержит партнерские ссылки; Я могу получить компенсацию, если вы приобретете товары или услуги по различным ссылкам, предоставленным в этой статье.
Наряду со структурами данных массив , двоичное дерево и связанный список , строка является еще одной популярной темой на собеседованиях по программированию. Я никогда не участвовал в собеседовании по кодированию, где не задавалось вопросов на основе строк .
Это очень очевидно, потому что я также никогда не писал программу, в которой не использовал бы ни одной строковой переменной. Вы всегда найдете строку как один из наиболее часто используемых типов данных или структур данных в любой программе.
В этой статье я собираюсь поделиться некоторыми наиболее распространенными проблемами кодирования на основе строк Я сталкивался со многими интервью по программированию, в которых принимал участие. У меня также есть опыт работы с обеих сторон стола как в качестве кандидата, так и в качестве интервьюера поэтому я знаю, насколько важны эти вопросы.
Кстати, нет смысла решать эти вопросы, если у вас нет базовых знаний о структуре данных или вам не нужно обновлять их в последнее время. В этом случае я предлагаю вам сначала пройти хороший курс или книгу по структуре данных и алгоритмам, чтобы пересмотреть концепцию.
Это сэкономит вам много времени на переходах между книгой и вашей IDE для каждого вопроса.
Если вам нужны ресурсы, я предлагаю пройти онлайн-курсы по изучению структуры данных и алгоритмов , даже если они не зависят от какого-либо языка программирования, я настоятельно рекомендую вам присоединиться к курсу, который объясняет проблемы на языке программирования, который вам наиболее удобен.
Нравится
- Структуры данных и алгоритмы: Глубокое погружение с использованием Java для разработчиков Java
- Алгоритмы и структуры данных на Python для тех, кто любит Python
- Мастер-класс по алгоритмам JavaScript и структурам данных Кольт Стил для JavaScript программисты
- Освоение структур данных и алгоритмов с использованием C и C++ для тех, кто хорошо разбирается в C/C++
Как решить проблемы с кодированием на основе строк?
Хорошая особенность строковой структуры данных заключается в том, что если вы знаете структуру данных массива, вы можете легко решать проблемы на основе строк, потому что строки – это не что иное, как массив символов .
Таким образом, все методы, которые вы знаете, решая вопросы кодирования на основе массива , могут быть использованы и для решения вопросов строкового программирования.
Вот мой список некоторых часто задаваемых вопросов по кодированию строк на собеседованиях по программированию:
- Как вы меняете заданную строку на место? ( решение )
- Как выводить повторяющиеся символы из строки? ( решение )
- Как вы проверяете, являются ли две строки анаграммами друг друга? ( решение )
- Как вы находите все перестановки строки? ( решение )
- Как можно изменить заданную строку с помощью рекурсии? ( решение )
- Как вы проверяете, содержит ли строка только цифры? ( решение )
- Как вы находите повторяющиеся символы в заданной строке? ( решение )
- Как вы подсчитываете количество гласных и согласных в данной строке? ( решение )
- Как вы подсчитываете вхождение данного символа в строку? ( решение )
- Как вывести первый неповторяющийся символ из строки? ( решение )
- Как преобразовать заданную строку в int, например atoi() ? ( решение )
- Как поменять местами слова в данном предложении, не используя какой-либо библиотечный метод? ( решение )
- Как вы проверяете, являются ли две строки вращением друг друга? ( решение )
- Как вы проверяете, является ли данная строка палиндромом? ( решение )
- Как вы находите длину самой длинной подстроки без повторяющихся символов? (решение)
- Учитывая строку str, как вы находите самую длинную палиндромную подстроку в str? (решение)
- Как преобразовать массив байтов в строку? ( решение )
- как удалить повторяющийся символ из строки? ( решение )
- Как найти максимально встречающийся символ в данной строке? ( решение )
- Как удалить данный символ из строки? ( решение )
Эти вопросы помогут улучшить ваши знания о строке как структуре данных.
Если вы можете решить все эти строковые вопросы без какой-либо помощи, значит, вы в хорошей форме.
Для более сложных вопросов я предлагаю вам решить проблемы, приведенные в Руководстве по разработке алгоритмов Стивена Скиены , книга с самыми сложными вопросами алгоритма.
Если вам нужно пересмотреть свои концепции структуры данных и алгоритмов, вы также можете ознакомиться с этими ресурсами:
1. Структуры данных и алгоритмы: Глубокое погружение с использованием Java для разработчиков Java
2. Алгоритмы и структуры данных на Python для тех, кто любит Python
3. Мастер-класс по алгоритмам JavaScript и структурам данных автор: Кольт Стил для JavaScript программисты
4. Освоение структур данных и алгоритмов с использованием C и C++ для тех, кто хорошо разбирается в C/C++
Это одни из лучших курсов по структурам данных и алгоритмам, и вы можете выбрать наиболее подходящий для вас. Кстати, я буду получать выплаты, если вы купите эти курсы
Теперь Вы готовы к собеседованию по программированию
Вот некоторые из наиболее распространенных вопросов, не связанных со структурой данных и алгоритмами, которые помогут вам действительно хорошо выступить на собеседовании.
Я также поделился многими из этих вопросов на своем javarevisited и java 67 , так что если вам действительно интересно, вы всегда можете пойти туда и поискать их.
Эти общие вопросы на основе строк – это те, которые вам нужно знать, чтобы успешно пройти собеседование в любой компании, большой или маленькой, для работы на любом уровне программирования.
Если вы ищете работу по программированию или разработке программного обеспечения в 2018 году, вы можете начать подготовку с этого списка вопросов по кодированию, но вам также необходимо подготовить другие темы.
Этот список более 50 проблем со структурой данных и алгоритмами содержит хорошие темы для подготовки, а также помогает оценить вашу подготовку, чтобы определить ваши сильные и слабые стороны.
Хорошее знание структуры данных и алгоритмов важно для успеха в собеседованиях по кодированию, и именно на этом вы должны сосредоточить большую часть своего внимания.
Дальнейшее обучение 10 Книг по алгоритмам Каждый Программист Должен Прочитать Топ-5 книг по структуре данных и алгоритмам для разработчиков Java От 0 до 1: Структуры данных и алгоритмы в Java Анализ структуры данных и алгоритмов — Собеседование при приеме на работу 50+ Проблем со структурой данных и кодированием для программистов 10 Курсов по структуре данных, алгоритмам и SQL для взлома собеседований по кодированию 20+ Проблем с кодированием массива для программистов 20+ Проблем с кодированием связанного списка для программистов 25+ Проблем с кодированием системного дизайна для собеседований
Заключительные замечания
Спасибо, Вы добрались до конца статьи… Удачи вам в вашем собеседовании по программированию! Это, конечно, будет нелегко, но вы станете на шаг ближе, попрактиковавшись в этих вопросах.
Если вам понравилась эта статья, пожалуйста, поделитесь ею со своими друзьями и коллегами и не забудьте подписаться на javin paul в Twitter!
P.S. — Если вам нужны БЕСПЛАТНЫЕ ресурсы для собеседований по программированию, вы можете ознакомиться с этим списком бесплатных курсов по структуре данных и алгоритмам чтобы начать вашу подготовку.
Оригинал: “https://dev.to/javinpaul/top-20-string-coding-problems-from-programming-job-interviews-493m”