java - 在java中列表末尾的链表中移动所有现有元音

标签 java data-structures linked-list singly-linked-list

我实际上是在尝试实现一个链表,该链表使用 java 在最后移动列表中的所有现有元音。意思是,给定一个列表(链接),每个节点都包含字符,我需要通过保持原始顺序将所有具有元音的节点移动到链表末尾的方式来分离其节点。

输出应该是这样的:

original list: w->e->r->s->o->m->a->t
Output needed: w->r->s->m->t->a->e->o

我想用 java 实现这个。请让我知道优化的方法是什么(比如不使用任何额外的列表)。任何建议,帮助将不胜感激。

最佳答案

尝试

    LinkedList<Character> list = new LinkedList<>(Arrays.asList('w', 'e', 'r', 's', 'o', 'm', 'a', 't'));
    int n = list.size();
    for(int i = 0; i < n; i++) {
        char c = list.get(i);
        if ("aeiuoAEIUO".indexOf(c) != -1) {
            list.remove(i);
            list.add(c);
            n--;
        }
    }
    System.out.println(list);

输出

[w, r, s, m, t, e, o, a]

关于java - 在java中列表末尾的链表中移动所有现有元音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13998957/

相关文章:

java - 在 jtable 中设置空日期

python - 如何实现二叉树?

javascript - 打印 Javascript 函数的所有参数名称

c - 链表打印

java - 尝试调用虚拟方法 Android Studio RecyclerView android.support.v7

java - 分布式作业执行框架

java - 使用 java 输出参数时的“空指针访问”

c# - 具有 O(1) 查找时间的数据结构将允许重复

c++ - 循环队列和循环链表

python - 如何在Python中实现异或链表?