-1
我必须从输入文件中读取包含单词的段落。然后创建一个双向链表,其中包含相同长度的单词按照升序排列在同一列表中的不同单词。所以我试图创建一个双向链表的数组,我知道如何添加单词,但我无法按升序对它们进行排序(我们必须在添加它们时对单词进行排序,而不是对文本进行排序,然后添加。)使用双向链表处理文本
int x = max(s);
DoublyLinkedList[] list = new DoublyLinkedList[x];
for (int i = 0; i < list.length; i++) {
list[i] = new DoublyLinkedList();
}
public static void m(DoublyLinkedList[] list, String s) {
String[] s1 = s.split(" ");
for (int i = 0; i < s1.length; i++) {
list[s1[i].length()].addLast(s1[i]);
}
}
public static int max(String s) {
String[] s1 = s.split(" ");
int max = s1[1].length();
for (int i = 0; i < s1.length; i++) {
if (s1[i].length() > max) {
max = s1[i].length();
}
}
return max + 1;
}
之前插入它请描述您的a nswer尽可能 – IsuruAb
@Linusk我用你的想法,改变了一点,但它仍然没有工作任何想法,将不胜感激 – fareed
公共静态无效addSorted(DoublyLinkedList列表,一个String){ \t \t字符串S1 =(字符串) (list.getFirst()); \t \t String s2 =(String)(list.getLast()); \t \t if(s1 == null){ \t \t \t list.addFirst(s); \t \t} else if(s1.compareToIgnoreCase(s)<= 0){ \t \t \t list.addFirst(s); \t \t} else if(s2.compareToIgnoreCase(s)> = 0){ \t \t \t list.addLast(s); \t \t} \t \t否则{ \t \t \t INT I = 0; \t \t \t String s3 =(String)(list.get(i)); \t \t \t而(s3.compareToIgnoreCase(S)> 0){ \t \t \t \t我++; \t \t \t \t break; \t \t \t} \t \t \t list.add(s,i); \t \t} \t} – fareed