常用的数据结构

图片说明

数组、字符串

图片说明
图片说明
这个题目有两个简单的思路1使用两个数组来分别记录每一个字母出现的次数,毕竟两个数组对应位置的值是否相等。2使用一个第一个出现字母进行加,第二个字符串进行减最后判断是否数组里面的值都为零。

链表

图片说明
图片说明
适合元素个数不确定,需要频繁的增加和删除
图片说明
图片说明
图片说明
图片说明

图片说明
图片说明
图片说明
图片说明
图片说明
遍历完这组,prev指向了头,head变成了尾,curr指向了下一组的头


图片说明
图片说明
图片说明 图片说明

不断的往里压进区左括号,一旦遇上了右括号就判断栈顶是不是相匹配的左括号,如果是的话就将左括号进行弹出.....最后判断整个栈里面是否为空

图片说明
思路:将数压进栈之前,判断当前的温度是否比顶部的值要大,如果大的话,将顶部元素弹出求出一个相差的天数,同时再判断现在是否也比新的顶部的值要打,如果大再弹出,直到没有数或者是遇到比较小的数【在堆栈里保存的是下标】
图片说明 图片说明
图片说明
图片说明
图片说明
图片说明

队列

图片说明
图片说明
图片说明
通过维护一个双端队列,来解题

图片说明
序号就是遍历的顺序
图片说明
图片说明
图片说明
图片说明
二叉搜索树的特点,比该节点比左孩子的值大,比有孩子的值小
图片说明
进行反向的中序遍历就可以快速的找到第k大的数