Другие статьи из рубрики «Задачи по программированию»
- Давайте найдем минимальный элемент в массиве! Это ведь так элементарно!
- Давайте найдем наибольший элемент в одномерном массиве! Это ведь так элементарно!
- Знаете выражение "Средняя температура по больнице"? А ведь есть схожий алгоритм!
- Не каждый сможет удалить заданный элемент из массива! Есть нюансы!
- Поиск элемента в массиве данных
- Пора бы понять, как правильно сдвигать элементы массива влево на 1 позицию!
- Пора бы понять, как правильно сдвигать элементы массива вправо на 1 позицию!
- Пора научиться делать инверсию элементов массива!
- Претендуешь на высокий балл на ЕГЭ по информатике? Ты просто обязан разбираться в алгоритмах обработки массивов данных!
- Сдвиг элементов массива влево на нужное количество элементов! Смогете?
- Сдвиг элементов массива вправо на нужное количество элементов! Смогете?
- Тривиальный алгоритм нахождения произведения элементов массива
- Тривиальный алгоритм нахождения суммы элементов массива
Ищите профессионального репетитора по информатике и ИКТ? Я к вашим услугам!
Приветствую вас на моем персональном сайте! Меня зовут Александр Георгиевич. Я – профессиональный рейтинговый репетитор по информатике и математике. Уже на протяжении нескольких лет я готовлю школьников со всей России к официальным экзаменам ОГЭ и ЕГЭ по информатике и математике.
Я прекрасно понимаю, что вы занятой по жизни человек, ценящий свое время, но, несмотря на это, я рекомендую вам потратить буквально 2-3 минутки и познакомиться с отзывами моих учеников.
В школе достаточно мало времени уделяется изучению языков программирования, поэтому зачастую 11-ники плоховато знают базовые алгоритмы на массивах. Я же специализируюсь на программировании и колоссальнейшее количество времени на своих уроках уделяю именно алгоритмическим задачам, в частности и ключевым алгоритмам обработки массивов данных.
Мои частные уроки проходят в различных территориальных форматах. С бурным развитием интернета большинство старшеклассников переходят на рельсы дистанционного обучения, например, используя программу Skype! Да, это очень удобно, достаточно дешево и продуктивно!
Своим ученикам я предлагаю несколько десятков различных вариантов взаимовыгодного финансового сотрудничества. Переходите и подбирайте для себя наиболее удобный вариант.
Чтобы записаться ко мне на первый пробный урок, вам нужно позвонить мне на мобильный телефон по номеру, который указан в «шапке» данного сайта. Задать уточняющие вопросы, коротко рассказать о своих планах и ожиданиях, и мы проведем первое занятие.
Какая из категорий экзамена ЕГЭ по информатике относится к алгоритмам на массивах?
Во-первых, сразу хочу сказать, что на официальном экзамене ЕГЭ по информатике и ИКТ обязательно будет задача, в которой нужно произвести обработку алгоритма элементов массива. От этого никуда не деться!
Во-вторых, чтобы получить максимальный балл по этой категории нужно порядочно владеть каким-либо языком программирования. По статистике большинство 11-ков в качестве базового языка выбирают язык программирования Pascal или какой-либо его диалект.
В-третьих, категория, ориентированная на алгоритмы обработки массивов данных, была всегда, начиная с самого введения ЕГЭ в школы. И, кстати, лично я не считаю задания из этой категории чрезвычайно сложными. Наоборот, - проходная категория, и достаточно легко набрать 2 первичных балла за ее правильное решение.
Несколько лет назад задания из ЕГЭ по информатике и ИКТ на алгоритмы на массивах входили в часть «С» под номером 2. То есть условное обозначение этой категории было таким: «С2». В настоящий момент времени эту классификацию реформировали (на мой экспертный взгляд незаслуженно) и сейчас она числится просто под №25.
Приведу фрагмент таблицы официальной спецификации, которая описывает характеристики категории, относящейся к алгоритмам обработки массивов:
Как видно из данного фрагмента, это задание оценивается в 2 первичных балла. Это достаточно много, учитывая, что, если хорошо программировать и знать все базовые алгоритмы на массивах, то затратить на выполнение этой задачи можно не больше 5-7 минут.
Число 30 в последней колонке означает рекомендованное время, которое составители ФИПИ, отводят на ее решение. На мой взгляд это число завышено. Достаточно будет и 10 минут! Но! Вы должны понимать все ключевые алгоритмы обработки одномерных и двумерных массивов данных.
Полный перечень алгоритмов обработки массивов. Необходимо понимать каждый из них!
Нужно понимать очень фундаментально, что массив – одна из базовых конструкций любого языка программирования. Превалирующее число задач решается с применением массивов данных. Следовательно, человечество, а в частности ученые-информатики, изобрели несметное количество алгоритмов на массивах.
Я сейчас постараюсь привести лишь самые-самые ключевые алгоритмы обработки массивов. Этот перечень не полный и никогда не сможет стать полным, так как алгоритмы обновляются, появляются постоянно новые, какие-то алгоритмы улучшаются или видоизменяются.
Итак, в основном приведу школьные алгоритмы обработки массивов данных:
Заполнение элементов массива случайным образом.
Поиск наибольшего/наименьшего элемента в массиве данных.
Нахождение суммы элементов массива.
Определение произведения элементов массива данных.
Переворот/инверсия элементов массива без использования вспомогательной памяти.
Нахождение заданного значения среди элементов массива.
Удаление элемента/элементов из массива по какому-либо условию. "Сжатие" массива.
Нахождение среднего значения среди всех элементов массива.
Определение "опорного" элемента в двумерном массиве.
Сортировка массива методом обмена/пузырька.
Сортировка элементов массива методом включения/вставками.
Сортировка значений массива методом выбора.
Циклический сдвиг элементов массива влево/вправо на один элемент.
Циклический сдвиг элементов одномерного массива влево/вправо на заданное количество позиций.
Проверка всех элементов массива на уникальность между собой.
Нахождение 2-го/3-го по величине значения в данном массиве за однократный просмотр массива.
Слияние двух независимых упорядоченных одномерных массивов в один без использования сортировки.
Определение медианы в массиве.
Вывод элементов массива на экран пользователя в заданном формате.
Транспонирование элементов двухмерного массива при выводе на экран.
Также хочу привести перечень факультативных алгоритмов на массивы:
Дихотомический поиск заданного значения в одномерном упорядоченном массиве данных.
Быстрая рекурсивная сортировка элементов одномерного массива целого типа данных.
Импорт данных из текстового файла в массив. Уметь заполнять как одномерные, так и двумерные массивы.
Экспорт данных из массива в текстовый файл. Уметь сохранять информацию как из одномерных, так и двумерных массивов.
Объявление динамического массива. Выделение динамической памяти. Инициализация данными. Обработка элементов массива в соответствии с каким-либо алгоритмом. Высвобождение памяти из-под значений массива.
Разбитие двумерного массива на коллекцию одномерных массивов. Элементы каждой строки двумерного массива становятся отдельными одномерными массивами.
Добавление элемента в динамический массив. Происходит «расширение» массива.
Вывод элементов матрицы на экран специальным образом. Например, змейкой или зигзагом.
Использование двухмерных массивов при обработке графовых структур данных.·
Данный перечень содержит основные алгоритмы на массивах, но не исчерпывает их разнообразие. Но хочу вас заверить, что, если вы, будете понимать фундаментально квинтэссенцию этих основных алгоритмов обработки данных, то вы с легкостью решите задание №25 на рубежном экзамене и заработаете 2 первичных балла.
Сколько нужно времени, чтобы в полной мере овладеть алгоритмами на массивах?
Во-первых, давайте не будем забывать, что, как ни крути, а это задача на программирование! А программирование – самая сложная наука для школьников. По статистике ее понимают хуже всего, поэтому не стоит строить иллюзий, что все будет просто. Не будет!
Во-вторых, придется прорешать под моим руководством, а также самостоятельно около 100 различных задач на массивы, чтобы закрепить понимание алгоритмов на массивы. Очевидно, что это работа не 5-и минут.
Как показывает исторический опыт, нам с учеником приходится потратить около 1-го месяца на эту категорию. Эффект, как правило, поразительный! Мои подопечные начинают щелкать эти задачи в течение 8-10 минут. Также у них пропадает боязнь перед заданиями подобного типа. Уверенность в собственных силах – залог успеха во всех делах, как больших, так и малых.
Если ученик подходит к изучению алгоритмов обработки массивов предельно собрано, то в лучшем случае изучение подобных алгоритмов может занять около 4-рех уроков длительностью в 90 минут. Быстрее никогда ни у кого не получалось!
Остались вопросы, недопонимание? Записывайтесь ко мне на пробный урок!
Разумеется, прочитав материал данной статьи, вы навряд ли стали значительно сильнее в алгоритмах на массивах! Одно дело читать и совсем другое практиковаться. Я – репетитор-практик, а это значит, что на своих частных занятиях я акцент делаю на практические решения. Минимум воды-теории и максимум тренировки.
Данной статьей я хотел показать перечень необходимых алгоритмов на обработку массивов, которыми должен овладеть каждый 11-ник, претендующий на высоченный итоговый балл. А также хотел подчеркнуть, что я сам идеально знаю все приведенные алгоритмы и могу их доступно объяснить и закодировать любой из этих алгоритмов на массивы.
Также, хочу отметить, что задание на обработку массивов очень интересное само по себе. Лично я, несмотря на то, что готовлю к ЕГЭ свыше 10 лет, до сих пор получаю удовольствие от рассмотрения алгоритмов на массивы.
Обязательно ознакомьтесь с моим текущим расписанием частных занятий. Это расписание я поддерживаю в актуальном состоянии в течение всего календарного года. Подберите дни недели, а также часы, когда вам будет наиболее комфортно приходить ко мне за подготовкой к ЕГЭ по информатике или математике.
Также хочу обрадовать тех ребят и девчат, которые планируют совершенствовать свои знания в области алгоритмики, тем, что у меня имеется коллекция продвинутых алгоритмов в количество 1500 штук. Многие алгоритмы из этой коллекции предназначены для вузовской программы и для подготовки к олимпиадам по информатике.
И не забывайте, что я достаточно востребованный репетитор, а количество вакантных мест в моем расписании ограничено. Поэтому, не откладывайте свое решение в долгий ящик. Берите в руки мобильный телефон и дозванивайтесь до меня. Задавайте любые уточняющие тематические вопросы и записывайтесь на пробный урок.
Отзывы
моих учеников
Арапов
Александр
Минаев
Сергей
Калиновский
Илья
Булычев
Владимир
Арсеньев
Михаил
Леонов
Никос
Евдокимов
Максим
Малышев
Евгений
Шамшуров
Денис
Ермаченков
Александр
Воробьев
Станислав
Павленко
Илья
Ахматова
Юлия