![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
sortMePlease |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
Приветствую всех. Прошу помочь мне с обработкой входных данных и в дальнейшем с сортировкой. Есть задание: у меня есть катрочки (много), на каждой из них написано по две страны (пункт прибытия/отправки), например:
1) Турция - Монголия; 2) Китай - ЮАР; 3) ЮАР - Турция; 4) Россия - Китай, и т.д. Т.е. я не знаю начальный и конечный пункт (список в целом неразрывный), но в итоге, методом сортировки, получить следующее: Россия - Китай Китай - ЮАР ЮАР- Турция Турция - Монголия Я бы хотел рассмотреть ситуацию, когда мы вводим данные через метод prompt, например: вводим (Россия - Китай) и вводим слова-связки (страны) до тех пор пока не закрываем окно ввода. Только возникает следующие вопросы: 1) Каким образом я должен хранить вводимые данные: создавать в цикле новые переменные или один массив, в который будут добавляся элементы, а дальше сравнивать их? 2) Ну и сортировка, думаю, что сортировать надо по всей длине слова, а не по первым буквам, иначе при вводе стран могут быть и ситуации, когда мы можем ввести Монголию, Малайзию и прочие страны начинающиеся с одинаковой буквы. |
|||
|
||||
sortMePlease |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
Хоть идейку подкинте)
|
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 13 Всего: 28 |
1) ничерта не понял
2) метод Array.sort адекватно сортирует по всем символам |
|||
|
||||
sortMePlease |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
Так как у меня количество карточек может быть большим, то я ввожу большое количество стран. И возникает вопрос: как-то, ведь, я должен хранить эти данные (массив, или переменные), чтобы в дальнейшем рассортировать их. Это сообщение отредактировал(а) sortMePlease - 5.8.2013, 12:58 |
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 13 Всего: 28 |
Если данных много, то хранить их нужно в массиве!
|
|||
|
||||
sortMePlease |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
То есть создаем цикл, в котором будет обновляться содержимое массива? Можешь пример кода скинуть? Это сообщение отредактировал(а) sortMePlease - 5.8.2013, 13:44 |
|||
|
||||
CruorVult |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 13 Всего: 28 |
||||
|
||||
sortMePlease |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
В целом нужно рассортировать данный список:
1) Турция - Монголия; 2) Китай - ЮАР; 3) ЮАР - Турция; 4) Россия - Китай, и т.д. И получить: Россия - Китай Китай - ЮАР ЮАР- Турция Турция - Монголия Желательно получить сортировщик, работающий с любым количеством слов-связок (страны), если все они (слова-связки) образуют одну неразрывную цепочку. ![]() |
|||
|
||||
akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 2 Всего: 5 |
Перебором
Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
akizelokro |
|
|||
![]() Крокодил ![]() ![]() Профиль Группа: Участник Сообщений: 761 Регистрация: 30.7.2007 Репутация: 2 Всего: 5 |
||||
|
||||
CruorVult |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 13 Всего: 28 |
Использование
П.С. Если цепочка будет некорректная, то не исключено зацикливание Это сообщение отредактировал(а) CruorVult - 6.8.2013, 19:14 |
||||
|
|||||
sortMePlease |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
Прокомментируй пожалуйста этот кусок, просто я понмаю это как: если "НЕ" длина массива map, то...
Здесь я пытаюсь вывести выходной массив arr, однако он выдал следущее:Турция,Монголия,Китай,ЮАР,ЮАР,Турция.
Это сообщение отредактировал(а) sortMePlease - 7.8.2013, 00:01 |
||||||
|
|||||||
CruorVult |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 868 Регистрация: 24.9.2008 Где: г.Киев, Украина Репутация: 13 Всего: 28 |
Что это ![]()
Я не понимаю, что тебе еще не ясно. Я написал метод, который формирует нужный массив. Все что тебе нужно сделать самому, так это вывести полученные данные любым возможным способом. Если ты и этого сделать не можешь, то прежде чем приступать к решениям таких задач нужно час-другой потратить на освоения основ языка. |
||||||
|
|||||||
sortMePlease |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.8.2013 Репутация: нет Всего: нет |
CruorVult, благодарю. Прости за тупизм, сейчас разобрался. На счет тернарных операторов: по мере программирования в js почти не сталкивался с ними.
Еще раз спасибо всем, кто участвовал. |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 10 Всего: 260 |
конкретный алгоритм не подскажу, но искать надо "поиск цикла в графе".
если у тебя не обязательно все элементы использовать, чтоб найти цикл — это лучше перебора. если у тебя много элементов — это лучше перебора. если у тебя есть разветвления — когда из одной страны несколько вариантов — это надежней перебора. в любом другом случае, понятно, перебор — вполне справится с задачей ) |
|||
|
||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |