1.两数之和-(数组+辅助数据结构)
解法1:遍历整个数组,并根据取出的数据重新遍历数组寻找对应的存在成对数据。O(n^2)
解法2:辅助数据结构map.key存储遍历数组只的补位数据。val存储对应的index数据。O(n)
2.两数相加-(链表)
输入的链表数据需要进位和补位,分别拿出每一位进行运算并进行补位。注意返回数据的格式是否需要反转,头插法还是尾插法
3.无重复字符的最长子串-(辅助数据结构)
滑动窗口方法,用辅助数据结构map其中key作为字符,value作为对应的下标.当遇到重复字符时需要往后移一位
4.寻找两个正序数组的中位数-(数组合并)
将两个有序数据合并成一个有序数组,如果长度为奇数则直接去总长度/2如果为偶数则取总长度/2+/2-1再均分,注意除以的时候使用浮点数
5.最长回文子串-(API,边界问题)
采用中心寻找法,遍历整个字符串并从当前位置左右寻找对应回文串,保留最大长度回文串.charAt(),substring(),length().边界问题通过采取对数据预处理的方式进行
6.Z字形变化-(辅助数据结构)
辅助map结构,key采用行数,value存储拼接的数据.在遍历文本的同时,采用标记位使row上下跳动最终将数据拼接输出即可