Comments 73
А почему именно постфиксная запись? Чем префиксная хуже? ИМХО она более логична и проста для восприятия.
Этот алгоритм вроде как преподают в любой нормальном вузе для программистов.
Не все на хабре закончили ВУЗ по специальности программист, но это не значит что им не будет интересно.
Знать сабж по имени и не обязательно — не все же учились на программиста и зубрили названия алгоритмов — но реализовать его на практике сможет любой программист, когда приспичит распарсить строковые выражения.
Хотя я бы предпочёл префиксную запись и рекурсию по дереву, если бы писал калькулятор — интуитивно понятнее, как отметили выше — но я не привык вручную работать со стеком и экономить память, ассемблера лет десять не видел :)
Хотя я бы предпочёл префиксную запись и рекурсию по дереву, если бы писал калькулятор — интуитивно понятнее, как отметили выше — но я не привык вручную работать со стеком и экономить память, ассемблера лет десять не видел :)
Большинство программистов бинарное дерево реализовать не может…
Значит им повезло с работой, если они могут обходиться без этих знаний :) — мне приходится так или иначе делать эти деревья практически в каждом проекте и по многу раз — вот и сейчас я занимаюсь ни чем иным, как расширяю древнее приложение, прикручиваю возможность неким сущностям в приложении иметь дочерние сущности, и пытаюсь это всё красиво отобразить в рамках старого интерфейса.
Поступить на программера, что-ли… пусть меня научат всему тому, чем я занимаюсь последние годы…
Поступить на программера, что-ли… пусть меня научат всему тому, чем я занимаюсь последние годы…
Часть из них даже не знает что это такое :(
Ну начните тогда с объяснения сортировки пузырьком — всё-таки это более «плавное» погружение в среду, чем польская запись.
по моему инеженерам не программистам тоже =)
Не факт — Киевский политехнический институт, физтех — алгоритма не было. Я-то его еще в лицее писала, но это другая история.
У нас его давали на первом курсе, калькулятор был курсовой.
Я лично в школе разбирался с обратной записью. Замечу, что не в столице, не в областном центре и даже не в районном, а В ОБЫЧНОЙ СОВЕТСКОЙ ШКОЛЕ!!! На уроках информатики (или математики?) нас учили работать с программируемыми калькуляторами, типа этого:


нам в школе давали. в 10ом.
вообщем-то не программистам тоже
не только в вузе, но и в колледже. правда там его, алгоритм, называли венгерской нотацией.
Да ну. Венгерская нотация — это совсем другая штука, соглашение об именовании переменных :) Особенно люто применяется в Microsoft (там, собственно, и зародилась)
не, люди, я серьёзно. =) я действительно проходил этот алгоритм в колледже. и там его действительно называли венгерской нотацией.
Зачем исходные коды, если Вы рассказываете об алгоритме?
Вы издеваетесь? следующими будут алгоритмы сортировки?
Вы будете удивлены, но я сам недавно столкнулся с программистом, который не знал сабжа. Причём довольно-таки неплохим специалистом. У всех бывают пробелы в образовании… =)
вообще странно это все
у нас например все начинали писать свои калькуляторы именно с конвертера инфикстной записи в постфиксную
у нас например все начинали писать свои калькуляторы именно с конвертера инфикстной записи в постфиксную
ну нереально же всё держать в голове, особенно те знания, которыми долгое время (годами) не пользуешься… сам польскую запись уже забыл. спасибо, мать ученья :)
Ну таким программистам надо не популярные статейки на Хабре читать, а проштудировать хотя бы пару университетских учебников по алгоритмам. Дело нехитрое.
После беглого просмотра Седжвика «Фундаметальные алгоритмы на С», раздел «Сортировка», глава «Быстрая сортировка», где представлены 7 (или 11, точно не помню) вариантов QuickSort, я бы не говорил о сортировке столь пренебрежительно.
На этом калькуляторе считалось тоже обратной записью.
(2+2)*3 вводить как 3 В 2 В 2 + x

(2+2)*3 вводить как 3 В 2 В 2 + x
Это мой первый ПК :-)
Памяти в них было мало и ОПЗ позволяла экономить драгоценные байты. Эх, было время, когда боролись за отдельные ячейки памяти :-)
Памяти в них было мало и ОПЗ позволяла экономить драгоценные байты. Эх, было время, когда боролись за отдельные ячейки памяти :-)
Что ж вы делаете?
Прямо слезы на глаза от его вида наворачиваются… Помню я с ним в крестики-нолики играл…
Прямо слезы на глаза от его вида наворачиваются… Помню я с ним в крестики-нолики играл…
Да… оно… %)
Лучше «2 В 2 + B 3 x». Тут ведь стек всего-то на 4 элемента. В этом примере — не вылезет, а вообще — грабли :)
ех, помню лабы по трансляторам. Вроде именно перевод с польскую инверсную запись был самым большим гемороем…
круто, реально круто)!11
Как я намучался с этим, когда писал скрипты для nncron…
Всегда завидовал тем, кто успел придумать \ изобрести \ запатентовать нечто крайне простое, вроде этой записи )
Ностальгия… Сам использовал ОПЗ при написании дипломной работы на тему «Пакет программ по численным методам». Вводилась формула в строковом виде, преобразовывалась в ОПЗ, ну и далее интегрировалась, дифференцировалась, решались дифуры.
Почему-то вспомнил lisp и его префиксную запись операторов.
Форма с оператором между операндами называется инфиксной записью. Форма с оператором после операндов называется постфиксной, или обратной польской записью в честь польского логика Я. Лукасевича (1958), который изучал свойства этой записи.
Не совсем верно. Лукасевич изобрел польскую нотацию (префиксную). На ее основе более чем через 30 лет была разработана обратная польская запись (постфиксная).
Хороший язык, красивый, помню даже сам для него «транслятор» (насколько это слово к нему применимо) «портировал» (лет через 10 только узнал, как это называется) с 8086 на 8080, жаль на практике у него применение очень ограниченно :(
У любого языка область применимости очень ограничена. Но знакомство с Фортом пллезно каждому, мозги неплохо прочищает.
Планировщик задач для windows nnCron вроде как даже написан на Форте, и при этом скрипты для него синтаксис форта активно используют.
А мозги прочищает реально здорово.
А мозги прочищает реально здорово.
> В таблице показана зависимость ситуации…
Я внимательно прочитал статью. И никак не могу понять, как составлена эта таблица? Вы приводите её как данность, но хотелось бы понимания, откуда она взялась.
Я внимательно прочитал статью. И никак не могу понять, как составлена эта таблица? Вы приводите её как данность, но хотелось бы понимания, откуда она взялась.
возьметесь написать преобразователь в ОПЗ не числового выражения, а строкового? ;-)
Элементами выступают не числа с операторами, а слова.
Элементами выступают не числа с операторами, а слова.
А что в таблице «зависимости ситуации от того, какой вагон отправился в Техас последним и какой вагон находится у стрелк» значит P?
Sign up to leave a comment.
Обратная польская запись