Stream 需要帮助了解面试qn吗

Stream 需要帮助了解面试qn吗,stream,Stream,我在问这里发现的问题 “(1)有一个字符流,在任何时候我们都需要找到并删除(means set occurrence=0)到目前为止出现次数最多的字符。为此设计数据结构和算法。(我使用了标准堆和哈希表设置,然后有人问我们是否可以替换lg(n)在实际场景中,堆操作具有一些有效的操作。我提出了双链表,并根据其出现情况将字符移动到前面 我无法理解这个问题。第一次出现的任何字符都具有迄今为止的最大出现计数(1>0),因此每次都应删除每个字符。有人知道这个人的真正意思吗?找到第一个非重复字符流字符 定义数

我在问这里发现的问题

“(1)有一个字符流,在任何时候我们都需要找到并删除(means set occurrence=0)到目前为止出现次数最多的字符。为此设计数据结构和算法。(我使用了标准堆和哈希表设置,然后有人问我们是否可以替换lg(n)在实际场景中,堆操作具有一些有效的操作。我提出了双链表,并根据其出现情况将字符移动到前面


我无法理解这个问题。第一次出现的任何字符都具有迄今为止的最大出现计数(1>0),因此每次都应删除每个字符。有人知道这个人的真正意思吗?

找到第一个非重复字符流字符

  • 定义数据结构
    LinkedHashMap
  • 如果条目存在,则沿字符流遍历增量 “按一计数”或“按一计数”添加一个新条目
  • 遍历结束后,计数为1的第一个字符将是第一个字符 非重复字符
  • 我认为“在任何时候”的意思是“在任意的时间”,而不是你解释的“在我们看到每个字符之后”。但我也不认为这个问题是关于堆栈溢出的。