美文网首页
Java面试题(数据结构相关)2020年11月

Java面试题(数据结构相关)2020年11月

作者: 想回家种地的程序员 | 来源:发表于2020-11-17 16:16 被阅读0次
    1. 获取链表遍历题

      image
      解答:链表是一个个节点连接起来形成一个链,所有遍历只能从头开始往后遍历。
      public class Solution {

      public ListNode findKthTotail(ListNode head, int k) {
      List<ListNode> nodeList = new ArrayList<>();
      while (head != null) {
      nodeList.add(head);
      head = head.next;
      }
      return nodeList.get(nodeList.size() - k);
      }
      }

    1. 两个栈变为一个队列

      image
      解答:栈是先进后出,队列是先进先出
      public class Solution {

      Stack<Integer> stack1 = new Stack<>();
      Stack<Integer> stack2 = new Stack<>();

      /**

      • 新增元素
      • @param node
        */
        public void push(int node) {
        stack1.push(node);
        }

      /**

      • 获取元素
      • @return
        */
        public int pop() {
        //将stack1取出放到,stack2
        while (!stack1.empty()) {
        Integer pop = stack1.pop();
        stack2.push(pop);
        }
        //取出stack2最上面元素
        int resInt = stack2.pop();
        //再将stack2剩余元素放到stack1
        while (!stack2.empty()) {
        Integer pop2 = stack2.pop();
        stack1.push(pop2);
        }
        return resInt;
        }
        }

    相关文章

      网友评论

          本文标题:Java面试题(数据结构相关)2020年11月

          本文链接:https://www.haomeiwen.com/subject/jiaxiktx.html