Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/25: Рейтинг темы: голосов - 25, средняя оценка - 4.64
1 / 1 / 0
Регистрация: 11.07.2014
Сообщений: 27

Отсортировать слова в массиве по третьей букве, если слово меньше трех букв, то по последней

22.02.2015, 09:15. Показов 5328. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, не получается решить ее. Вроде что-то написал, а с сортировкой проблемы.
Задача: Отсортировать слова в массиве по третьей букве, если слово меньше трех букв, то по последней.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package javaapplication2;
import java.util.Arrays;
import static java.util.Arrays.sort;
 
public class JavaApplication2 {
 
    public static void main(String[] args) {
        // TODO code application logic here
        String[] str = {"Мама","Папа","Дядя","Тетя","Я","Ты"};
        for(int i=0; i<str.length; i++){
            if(str[i].length()>3){
                for(int j=0;j<1;j++){
                    if(str[i].charAt(j+3)>str[i+1].charAt(j+3)){
                        
                    }
                }
            }
            else{
                for(int j=0;j<1;j++){
                    if(str[i].charAt(str[i].length())>str[i].charAt(str[i].length())) {
                        
                    }
                }
            }
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.02.2015, 09:15
Ответы с готовыми решениями:

Отсортировать слова строки по последней букве по алфавиту
Ввести строку и вывести отсортированную строку по последней букве.

Отсортировать элементы массива слов по последней букве слова
Записал слова в массив. Нужно отсортировать элементы массива по последней букве слова. как обратиться к последней букве слова в массиве. ...

Отсортировать слова заданного текста, начинающиеся с гласных букв, по второй букве
1)Отсортировать слова заданного текста, начинающиеся с гласных букв, по второй букве с помощью StringBuildera. 2)Модифицировать...

4
 Аватар для Sanan07
284 / 264 / 173
Регистрация: 27.07.2014
Сообщений: 584
22.02.2015, 12:29
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.util.Comparator;
 
 
public class LetterComparator implements Comparator<String> {
 
    @Override
    public int compare(String o1, String o2) {
        o1=o1.toLowerCase();o2=o2.toLowerCase();
        if(o1.length()<3 & o2.length()>=3) {
            return o1.charAt(o1.length()-1) - o2.charAt(2);
        }
        else if(o1.length()>=3 & o2.length()<3) {
            return o1.charAt(2) - o2.charAt(o2.length()-1);
        }
        else if(o1.length()<3 & o2.length()<3) {
            return o1.charAt(o1.length()-1)-o2.charAt(o2.length()-1);
        }
        return o1.charAt(2) - o2.charAt(2);
    }
 
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Arrays;
 
public class Lab {
    
 
    
        public static void main(String[] args) {
            
                
                
            LetterComparator comp = new LetterComparator();
            String[] str = {"Мама","Папа","Дядя","Тетя","Тя","Я","А","Ф","Пы","Аа","а"};
            Arrays.sort(str,comp);
            System.out.println(Arrays.toString(str));
            
            
        
            
        
    } 
        
        
}
Это в случае если не имеет значение регистр букв,в противном случае уберите первую строчку в методе compare
1
1 / 1 / 0
Регистрация: 11.07.2014
Сообщений: 27
22.02.2015, 15:00  [ТС]
Спасибо, а возможно реализовать эту задачу через мой способ?
0
 Аватар для Sanan07
284 / 264 / 173
Регистрация: 27.07.2014
Сообщений: 584
22.02.2015, 15:18
Лучший ответ Сообщение было отмечено psevdomak как решение

Решение

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 String[] str = {"Мама","Папа","Дядя","Тетя","Мы","Я","Ты","Он"};
             for(int i=0; i<str.length-1; i++){
                 for(int j=i+1;j<str.length;j++) {
                  if(str[i].length()>=3 && str[j].length()>=3){
                     if(str[i].charAt(2)>str[j].charAt(2)){
                         String temp = str[i];
                         str[i]=str[j];
                         str[j]=temp;
                   
                     }
                 }
                 else if(str[i].length()<3 && str[j].length()<3){
                     if(str[i].charAt(str[i].length()-1)>str[j].charAt(str[j].length()-1)){
                         String temp = str[i];
                         str[i]=str[j];
                         str[j]=temp;
                   
                     }
                 }
                 else if(str[i].length()<3 && str[j].length()>=3){
                     if(str[i].charAt(str[i].length()-1)>str[j].charAt(2)){
                         String temp = str[i];
                         str[i]=str[j];
                         str[j]=temp;
                   
                     }
                 }
                 else if(str[i].length()>=3 && str[j].length()<3){
                     if(str[i].charAt(2)>str[j].charAt(str[j].length()-1)){
                         String temp = str[i];
                         str[i]=str[j];
                         str[j]=temp;
                   
                     }
                 }
               
             }
             
             
          }
             
             
            System.out.println(Arrays.toString(str));
1
1 / 1 / 0
Регистрация: 11.07.2014
Сообщений: 27
22.02.2015, 15:41  [ТС]
Божественно, жму руку!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.02.2015, 15:41
Помогаю со студенческими работами здесь

Переписать из файла F в файл G все слова, состоящие меньше, чем из трех букв.
Создать текстовый файл F. Переписать из файла F в файл G все слова, состоящие меньше, чем из трех букв.

Отсортировать строки в алфавитном порядке по последней букве
Привет всем, ребят дело такое,надо ввести 5 строк и отсортировать их в алфавитном порядке по последней букве, написал код для сортировки по...

В заданном символьном массиве отсортировать слова по количеству букв (по возрастанию)
Здравствуйте, ребята! Мне нужно отсортировать слова по количеству букв(по возрастанию). Правда в Visual Studio ругается. Но в Dev C++...

Создайте программу для сортировки списка по последней букве первого слова
Здравствуйте уважаемые гуру форума. Очень прошу помощи в непростом задании (для меня). Прошу сильно не пинать, так как VBA изучал...

Отсортировать слова по алфавиту по первой букве
Господа программисты помогите пожалуйста решить задачку в qbasic : ))Условие : ввести 3 любых слова на русском языке программа их...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru