【问题标题】:Java: User defined String, that points to an ArrayJava:用户定义的字符串,指向一个数组
【发布时间】:2014-04-27 20:46:11
【问题描述】:

基本上我有一个方法,它采用String name,如果找到该条目将删除该条目。 我有一个 LinkedList 由 26 个 LinkedList 实例组成,命名(按字母顺序)如下 a、b、c、...、z

假设用户输入了“Charlie”之类的单词,所以我想删除它。

Charlie 以 'c' 开头,所以我怎样才能让我的代码指向 LinkedList c 而不必遍历所有LinkedList 项目。

到目前为止,我得到了名字 Charlie,在 0 索引处得到 char,将其转换为小写并命名为 String 字母。有没有办法做 [Letter].remove(name);

我问了一个类似的问题,但我觉得我写得不好。

谢谢。

【问题讨论】:

    标签: java arrays string object


    【解决方案1】:

    也许您应该仔细研究一下 java API,尽量不要重新发明轮子。基本上你可以使用HashMap 来包装你的LinkedList 实例而不是使用LinkedList,因为它可以让你根据一个键(你的情况下的字母字符)选择你的项目

    Map<Character,LinkedList> myMap = new HashMap<Character,LinkedList>();
    

    在填写完您的Map 后(只需为每个字符调用myMap.put('c', new LinkedList()) 等等),您就可以获得所需的LinkedList,而无需遍历整个地图:

    myMap.get('c');
    

    【讨论】:

      【解决方案2】:

      您正在寻找 trie 数据结构。

      如果您仍然想使用您的方法来做,而不是使用列表的链接列表,请尝试使用数组数组。可能会派上用场

      【讨论】:

        猜你喜欢
        • 2013-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多