|
0 / 0 / 0
Регистрация: 21.10.2017
Сообщений: 40
|
|
Подсчет кол-ва слов, начинающихся и заканчивающихся на одну и туже букву без использования готовых строковые функции20.12.2017, 13:02. Показов 2411. Ответов 26
Метки нет (Все метки)
Написать функцию, входным параметром которой является строка. Функция должна вернуть количество слов в строке, у которых первый и последний символ совпадают (слова – группы символов, разделенные пробелами, или пробелом и началом (концом) строки).
Подскажите пожалуйста, как решить данную задачу не используя готовые строковые функции, буду очень благодарен!
0
|
|
| 20.12.2017, 13:02 | |
|
Ответы с готовыми решениями:
26
Подсчитать кол-во слов, начинающихся и заканчивающихся на одну и туже букву Дан файл, содержащий текст, подсчитать количество слов начинающихся и заканчивающихся на одну и туже букву Посчитать кол-во слов начинающихся и заканчивающихся на одну и ту же букву |
|
|
||||||
| 20.12.2017, 16:18 | ||||||
0
|
||||||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||||||
| 21.12.2017, 00:17 | ||||||
Сообщение было отмечено IT_shnik как решение
Решение
IT_shnik, имхо, вы явно недоозвучили условие задачи -- либо в строке гарантированно нет однобуквенных слов, либо искать надо только слова, состоящие минимум из двух символов
к примеру, предлог "у" начинается с буквы "у", и ею же заканчивается, а, значит, подпадает под параметры искомых слов, что как бы не очень здорово ![]()
понятное дело, что всякий символ s [j] надо было перевести в какой-то один регистр, например, в нижний toLowerCase(), но это сделаете сами, я не стал загромождать код, чтобы вы смогли без помех уловить суть этого простейшего алгоритма
1
|
||||||
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
||
| 21.12.2017, 09:13 | ||
В предлоге "у" первый и последний символ совпадают, что удовлетворяет условиям задачи.
0
|
||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 21.12.2017, 13:35 | |
|
Balanaar, объясняю: моя оценка "не здорово" дана озвученной формулировке задачи.
Годность/ негодность формулировки любой задачи проверяется очень легко - если существует частный случай, при котором задача превращается либо в абсурд, либо в нерешаемую, то, значит, формулировка задачи негодная, не покрывает все возможные случаи Для данной задачи такой абсурдный частный случай - исходная строка состоит из всех 33-рёх букв русского алфавита, разделённых пробелами". Решением для этого частного случая будет число 33, что превращает задачу в абсурд Согласны? Если не согласны, то поясню реальным примером из моей рабочей практики: Не по теме: Не так давно поставили передо мной задачу:
0
|
|
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
||
| 21.12.2017, 13:38 | ||
|
0
|
||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 21.12.2017, 13:45 | |
|
0
|
|
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|||
| 21.12.2017, 13:56 | |||
|
В вашей истории речь шла о трансвычислительности задачи. Что не так с 33мя буквами в строке - наверно только вам известно.
Добавлено через 6 минут Кстати
0
|
|||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 21.12.2017, 15:32 | ||
|
я готов подождать... и даже целую неделю ![]() только строки из одних единиц или из одних двоек/девяток не присылайте, ладно? а то с вас станется, вы же у нас "Дальше вникать не стал."
0
|
||
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|
| 21.12.2017, 15:35 | |
|
123123123
123123123 Неделю ждать не обязательно
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 21.12.2017, 15:39 | ||
|
Возьмётесь? Будете сканировать, распознавать, писать программу? или просто в википедии узнаете количество букв в старом алфавите с "ятями"?
0
|
||
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|
| 21.12.2017, 15:46 | |
|
Вообще не улавливаю логики в вашем сравнении.
У ТСа есть конкретная задача. Условия длины слова в задаче не было. Значит следует учитывать и тот факт, что слово может состоять из одного символа. Какие тут могут быть вопросы?
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|||
| 21.12.2017, 16:08 | |||
![]() Рад за вас а теперь зависимость для этой самой максимальной длины подстроки len_max от N в виде формулы прописать сможете? чтобы она была точно больше, чем [N/2], но меньше, чем (N - 1)? Добавлено через 3 минуты но всякая задача, имхо, должна иметь практический смысл если в результате имеющейся формулировки мы имеем результатом задачи то, что можно сделать/узнать много более простым способом, то формулировка негодна, ее надо менять... об том и спич
0
|
|||
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|
| 21.12.2017, 16:18 | |
|
Да, задача должна иметь практический смысл, если решение этой задачи используется в каком-либо проекте. В данном случае ТС решает задачу с целью обучения языку, приобретения базовых навыков работы со строками и проч., о чём свидетельствует эта пресловутая фраза "без использования готовых строковых функций". Понятное дело, что на практике всегда используются эти самые строковые функции, но знать базу тоже нужно обязательно. Поэтому искать практический смысл в таких задачах и философствовать на эту тему не считаю необходимым.
Добавлено через 1 минуту Правда с фразой "ТС решает задачу" я конечно погорячился...
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|||
| 21.12.2017, 16:40 | |||
|
с фразой любые эффективные (быстрые и не требующие излишней оперативной памяти) алгоритмы практических задач поиска чего-либо в строках предусматривают именно последовательный доступ к символам строки, без использования каких-либо substring'-ов и прочих indexOf'-ов
0
|
|||
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|
| 21.12.2017, 16:53 | |
|
Недавно где-то в соседних темах кто-то приводил сравнение производительности методов перебора массивов. Так вот на удивление метод forEach() оказался самым быстрым. Даже быстрее обыкновенного цикла for (var i = 0; i < arr.length; i++). Возможно со строками ситуация несколько иная.
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||
| 21.12.2017, 17:10 | ||
|
Дело в том, что на работе я занимаюсь именно алгоритмами, т.е. изыскиваю рецепт решения задачи, который потом реализуют программисты на серьёзных языках - на Jave, на Си javascript я освоил самостоятельно, чтобы проверять на нём работоспособность алгоритмов и делать на нём анимированные презентации работы алгоритмов для наших программистов, только текстового описания часто бывает недостаточно (или им просто лень вникать иногда в очень объёмный мой текст) Ну так как с формулой зависимости len_max подстроки от N? слабо?
0
|
||
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|
| 21.12.2017, 17:16 | |
|
Формула зависимости максимально возможной длины повторяющейся подстроки от длины произвольной строки? Как мы уже выяснили, len_max(N) = N - 1. Возможно вы имели в виду другую зависимость. Сформулируйте корректнее.
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|
| 21.12.2017, 17:24 | |
|
формулирую: найти надо максимальную длину повторяющейся хотя бы один раз подстроки, имеющейся в исходной строке длиной N при условии, что количество символов алфавита исходной строки > 1
алфавитом в алгоритмах поиска в строках называются символы, из которых составлены исходная строка и кейворды (если таковые в задаче имеются -- в нашем случае запросов нет, в исходной строке могут быть 10-ть разных арабских цифр 0...9)
0
|
|
|
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
|
|
| 21.12.2017, 17:39 | |
|
len_max(N, a) = N - a, где
N - длина исходной строки; a - количество различных символов в исходной строке; len_max - максимальная длина повторяющейся хотя бы один раз подстроки, имеющейся в исходной строке. В частности, если условие гласит, что a > 1, то очевидно из формулы, что len_max будет максимально при a = 2. Соответственно len_max(N) = N - 2 при условии, что количество символов алфавита исходной строки > 1. Пример: 12121212121212 12121212121212 N = 14, len_max = 12
0
|
|
| 21.12.2017, 17:39 | |
|
Помогаю со студенческими работами здесь
20
SameCount(s, n) Подсчёт количества слов в строке, начинающихся и заканчивающихся на одну и ту же букву
Количество слов начинающихся и заканчивающихся на одну и ту же букву Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву. Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
||||
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1
У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\
А в самом низу файла-профиля. . .
|
PowerShell и онлайн сервисы. Валюта (floatrates.com руб.)
iNNOKENTIY21 11.11.2025
PowerShell функция floatrates-rub
Примеры вызова:
# Указанная валюта 'EUR'
floatrates-rub -Code 'EUR'
# Список имеющихся кодов валют
floatrates-rub -Available
function floatrates-rub {
|
PowerShell и онлайн сервисы. Погода (RP5.ru)
iNNOKENTIY21 11.11.2025
PowerShell функция Get-WeatherRP5rss для получения погоды с сервиса RP5
Примеры вызова
Get-WeatherRP5rss
с указанием id 5484 — Москва (восток, Измайлово) и переносом строки:. . .
|
PowerShell и онлайн сервисы. Погода (wttr)
iNNOKENTIY21 11.11.2025
PowerShell Функция для получения погоды с сервиса wttr
Примеры вызова:
Погода в городе Омск с прогнозом на день, можно изменить прогноз на более дней, для этого надо поменять запрос:. . .
|
|
PowerShell и онлайн сервисы. Валюта (ЦБР)
iNNOKENTIY21 11.11.2025
# Получение курса валют
function cbr (] $Valutes = @('USD', 'EUR', 'CNY')) {
$url = 'https:/ / www. cbr-xml-daily. ru/ daily_json. js'
$data = Invoke-RestMethod -Uri $url
$esc = 27
. . .
|
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений
Всем привет. А вот мой компьютер, переделанный из ноутбука.
Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
|
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
|
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца:
Хочу еще Симбу взять, очень нравится. . .
|
Инференс ML моделей в Java: TensorFlow, DL4J и DJL
Javaican 05.11.2025
Python захватил мир машинного обучения - это факт. Но когда дело доходит до продакшена, ситуация не так однозначна. Помню проект в крупном банке три года назад: команда data science натренировала. . .
|