<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qqMiSa的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/qqMiSa</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; qqMiSa]]></copyright><item><title><![CDATA[Hive 踩坑]]></title><link>https://blog.csdn.net/qqMiSa/article/details/118346445</link><guid>https://blog.csdn.net/qqMiSa/article/details/118346445</guid><author>qqMiSa</author><pubDate>Tue, 29 Jun 2021 23:48:22 +0800</pubDate><description><![CDATA[因为工作原因用到hive，平时都当sql用，也没去系统的总结，记录一些坑

1. 字符匹配问题， 当字段是字符串型时，where语句=0(int)型来匹配会拉不到数据

2. 转义/，需要///，三个/
]]></description><category></category></item><item><title><![CDATA[春招算法暑期实习面经，百度腾讯阿里已OC...]]></title><link>https://blog.csdn.net/qqMiSa/article/details/115859627</link><guid>https://blog.csdn.net/qqMiSa/article/details/115859627</guid><author>qqMiSa</author><pubDate>Mon, 19 Apr 2021 20:28:42 +0800</pubDate><description><![CDATA[拿到了比较心仪的offer，决定结束春招实习面试了。面的有点久了，忘了很多，春招实习就面了BAT和美团四家，收获了三家offer，还是比较满意了????

百度（机器学习/数据挖掘/自然语言处理）大类

百度的算法岗暑期实习生只分为机器学习和CV两类，所以...有认识的人面机器学习岗第一面跟面试官说不会NLP被挂了..

一面（50多分钟）

自我介绍1分钟
项目+围绕项目提问20多分钟
穿插着问了一些lightgbm,Lstm,CNN的东西
还有如何应对过拟合。
code1:无重复值旋转数组找最小值
c.]]></description><category></category></item><item><title><![CDATA[leetcode76. 最小覆盖子串（滑动窗口**）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/114604005</link><guid>https://blog.csdn.net/qqMiSa/article/details/114604005</guid><author>qqMiSa</author><pubDate>Tue, 09 Mar 2021 22:14:05 +0800</pubDate><description><![CDATA[给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串，则返回空字符串 "" 。

注意：如果 s 中存在这样的子串，我们保证它是唯一的答案。

一刷：


class Solution:
    def minWindow(self, s: str, t: str) -&gt; str:
        tmap = collections.defaultdict(int)
        for i in t:
           ]]></description><category></category></item><item><title><![CDATA[leetcode 72. 编辑距离（动态规划）**]]></title><link>https://blog.csdn.net/qqMiSa/article/details/114457891</link><guid>https://blog.csdn.net/qqMiSa/article/details/114457891</guid><author>qqMiSa</author><pubDate>Sun, 07 Mar 2021 20:37:15 +0800</pubDate><description><![CDATA[题目：给你两个单词word1 和word2，请你计算出将word1转换成word2 所使用的最少操作数。

你可以对一个单词进行三种操作：插入一个字符，删除一个字符，替换一个字符。

动态规划标准步骤：

1. 找转移状态


...]]></description><category></category></item><item><title><![CDATA[leetcode 503 下一个更大元素II (单调栈，循环数组)*]]></title><link>https://blog.csdn.net/qqMiSa/article/details/114457164</link><guid>https://blog.csdn.net/qqMiSa/article/details/114457164</guid><author>qqMiSa</author><pubDate>Sat, 06 Mar 2021 21:22:12 +0800</pubDate><description><![CDATA[题目：给定一个循环数组（最后一个元素的下一个元素是数组的第一个元素），输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序，这个数字之后的第一个比它更大的数，这意味着你应该循环地搜索它的下一个更大的数。如果不存在，则输出 -1。

解法：

1.单调栈思想，维护一个单调不增的数组的下标i~k，当出现一个比单调栈顶更大的元素num，则出栈后j~k的元素的最近更大元素即为num

2.注意是循环数组，单调栈最后剩下的下标要继续与开头的n位数组相比较, 可以将原数组拉直（扩展遍历两次），进行]]></description><category></category></item><item><title><![CDATA[算法题：找到1到n（乱序）中缺失的两个数]]></title><link>https://blog.csdn.net/qqMiSa/article/details/114419233</link><guid>https://blog.csdn.net/qqMiSa/article/details/114419233</guid><author>qqMiSa</author><pubDate>Fri, 05 Mar 2021 23:23:04 +0800</pubDate><description><![CDATA[要求用O(n)的时间复杂度进行查找：

1. 申请额外空间n个空间，记录当前数字是否出现过


def find1(a, n):
    res = []
    b = [0 for x in range(n)]
    for i in a:
        b[i-1] = 1
    for i in range(n):
        if b[i] == 0:
            res.append(i+1)
    return res



2.利用数学公式，先求1到n的平方和和1到.]]></description><category></category></item><item><title><![CDATA[2020 天马杯 AI+ 智能质检 top4方案]]></title><link>https://blog.csdn.net/qqMiSa/article/details/111880865</link><guid>https://blog.csdn.net/qqMiSa/article/details/111880865</guid><author>qqMiSa</author><pubDate>Tue, 29 Dec 2020 10:44:16 +0800</pubDate><description><![CDATA[开源代码：https://github.com/aBadCat/2020msxf-AI-quality-inspection-competition-4th-place/tree/main/Hierarchical%20Attention%20Network

赛题简介：https://blog.csdn.net/qqMiSa/article/details/109264698，除此之外决赛还新增了一个ASR题，由于ASR了解不多，赛程时间短，基本只是采用了https://github.com/Z-yq/T]]></description><category></category></item><item><title><![CDATA[2020 天马杯 AI+智能质检 baseline（keras bert 文本分类）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/109264698</link><guid>https://blog.csdn.net/qqMiSa/article/details/109264698</guid><author>qqMiSa</author><pubDate>Sat, 24 Oct 2020 20:14:04 +0800</pubDate><description><![CDATA[看群里一直有人求baseline，开赛了一阵了也没有见人分享，这里就整理了一个简单的基于bert文本分类框架。

初赛任务

针对语音客服通话数据进行投诉舆情风险发现，预测投诉舆情风险高的会话。

◆ 呼叫中心每天客服拨打的数据中，会产生一些投诉舆情风险很高的会话，可能是客服态度引起的客户不满，也可能是客户本身情绪不好引起会话风险较高，或者一些其他的有待探究的原因。

◆ 由于每天拨打的量很多，而投诉舆情风险很高的会话又非常少，需要我们用算法帮助质检工作人员发现这些高风险的会话，从而尽早的介入。

数据初探]]></description><category></category></item><item><title><![CDATA[Python中 I、& 和 and、or在逻辑运算时有何不同]]></title><link>https://blog.csdn.net/qqMiSa/article/details/109062886</link><guid>https://blog.csdn.net/qqMiSa/article/details/109062886</guid><author>qqMiSa</author><pubDate>Tue, 13 Oct 2020 23:10:09 +0800</pubDate><description><![CDATA[I、&amp;和and、or在逻辑运算的区别

a,b 都是布尔型时，|、&amp;和and、or用法几乎一致

但是需要注意的是：

and、or也称作短路操作符或者惰性求值，它们的参数从左向右解析，一旦结果可以确定就停止。

例如 a = True, b = False, c = True

a or b or c 不会解析b和c

a | b | c 则a、b、c都会解析


def a():
    print("a")
    return True

def b():
    print("b.]]></description><category></category></item><item><title><![CDATA[2020华为云大数据挑战赛（knn+QuickBundles+LGB、 利用folium可视化、海运ETA预测）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/108631125</link><guid>https://blog.csdn.net/qqMiSa/article/details/108631125</guid><author>qqMiSa</author><pubDate>Wed, 16 Sep 2020 22:03:25 +0800</pubDate><description><![CDATA[比赛结束，由于复现出现了一些失误（现在想来完全可以避免，也算是踩坑了=。=）没能去决赛，这里还是进行一些简单总结。

数据特点以及难点：

测试集数据采样点紊乱，跟训练集不同，导致很多模型达不到理想效果，且线下验证集几乎都是失效的。

训练集给的路由比较脏，测试集也几乎只有起始和终点的路由，中间路由都不干净。

预处理部分：

（1）将'loadingOrder','carrierName',"longitude","latitude","vesselMMSI"完全相同的重复数据删除，并按照订单号和时间进行]]></description><category></category></item><item><title><![CDATA[剑指offer: python全解. 持续ing...]]></title><link>https://blog.csdn.net/qqMiSa/article/details/108629809</link><guid>https://blog.csdn.net/qqMiSa/article/details/108629809</guid><author>qqMiSa</author><pubDate>Wed, 16 Sep 2020 21:32:15 +0800</pubDate><description><![CDATA[简单部分

数组中重复的数字： hash表、数组遍历

在一个长度为 n 的数组 nums 里的所有数字都在 0～n-1 的范围内。数组中某些数字是重复的，但不知道有几个数字重复了，也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。

示例：


输入：
[2, 3, 1, 0, 2, 5, 3]
输出：2 或 3 

PS: 2 &lt;= n &lt;= 100000

一刷：

遍历数组再用hash表存放：


class Solution:
    def findRepeatNumber]]></description><category></category></item><item><title><![CDATA[2020CCF重点区域人群密度预测赛后总结---top3]]></title><link>https://blog.csdn.net/qqMiSa/article/details/107240633</link><guid>https://blog.csdn.net/qqMiSa/article/details/107240633</guid><author>qqMiSa</author><pubDate>Fri, 10 Jul 2020 00:28:08 +0800</pubDate><description><![CDATA[我们团队都是数据挖掘新手，本次是我参加的第三个大数据比赛，也是第二次在Datafoutain平台上获奖（感谢平台..）。这里做一些赛后分享主要面向数据挖掘新手，老鸟轻喷。本次赛题是时序回归预测的赛题，这样的比赛通常有几个大的思路：

1）深度学习模型：LSTM等适合时序预测的变种模型

2）集成树模型：滑动窗口提取特征构建LGB等集成树模型

3）同时涉及时空数据也常有图神经网络来做的，不过这道题的空间信息不太好抽取

4）差分移动平均等一些统计规则模型，在预测数据处于波动区间时往往收益较高，也可以快速提统]]></description><category></category></item><item><title><![CDATA[leetcode: 最佳观光组合（枚举优化）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106819316</link><guid>https://blog.csdn.net/qqMiSa/article/details/106819316</guid><author>qqMiSa</author><pubDate>Wed, 17 Jun 2020 22:49:32 +0800</pubDate><description><![CDATA[给定正整数数组A，A[i]表示第 i 个观光景点的评分，并且两个景点i 和j之间的距离为j - i。

一对景点（i &lt; j）组成的观光组合的得分为（A[i] + A[j] + i- j）：景点的评分之和减去它们两者之间的距离。

返回一对观光景点能取得的最高分。

PS：

2 &lt;= A.length &lt;= 50000
	1 &lt;= A[i] &lt;= 1000
题目一看，暴力解法O()，那么题目肯定是要我们进行优化的

如何优化，hash、动态规划啥的都用不上，再仔...]]></description><category></category></item><item><title><![CDATA[leetcode: 最长公共字串(简单题，横向扫描)]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106773462</link><guid>https://blog.csdn.net/qqMiSa/article/details/106773462</guid><author>qqMiSa</author><pubDate>Mon, 15 Jun 2020 23:36:46 +0800</pubDate><description><![CDATA[编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀，返回空字符串""。


class Solution:
    def longestCommonPrefix(self, strs: List[str]) -&gt; str:
        if strs == []:
            return ""
        # 初始最长公共前缀为数组中第一个元素
        result = strs[0]
        for i in range(1, len(st.]]></description><category></category></item><item><title><![CDATA[leetcode: 每日温度（单调栈）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106698045</link><guid>https://blog.csdn.net/qqMiSa/article/details/106698045</guid><author>qqMiSa</author><pubDate>Thu, 11 Jun 2020 22:13:53 +0800</pubDate><description><![CDATA[类似于：柱状图中最大的矩形(单调栈*)

请根据每日 气温 列表，重新生成一个列表。对应位置的输出为：要想观测到更高的气温，至少需要等待的天数。如果气温在这之后都不会升高，请在该位置用 0 来代替。

例如，给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73]，你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]。

提示：气温 列表长度的范围是 [1, 30000]。每个气温的值的均为华氏度，都是在 [30, 100] 范围内的整数。

]]></description><category></category></item><item><title><![CDATA[leetcode: 回文数（简单题）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106675665</link><guid>https://blog.csdn.net/qqMiSa/article/details/106675665</guid><author>qqMiSa</author><pubDate>Wed, 10 Jun 2020 22:26:11 +0800</pubDate><description><![CDATA[判断一个整数是否是回文数。回文数是指正序（从左向右）和倒序（从右向左）读都是一样的整数。

PS:

你能不将整数转为字符串来解决这个问题吗？

一刷：

时间复杂度O(logn)，空间复杂度O(1)，但是这个解法最少循环1次最多循环1.5次,可以进行优化


class Solution:
    def isPalindrome(self, x: int) -&gt; bool:
        if x &lt; 0:
            return False
        i = 1
  ]]></description><category></category></item><item><title><![CDATA[leetcode: 把数字翻译成字符串（动态规划）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106652533</link><guid>https://blog.csdn.net/qqMiSa/article/details/106652533</guid><author>qqMiSa</author><pubDate>Tue, 09 Jun 2020 23:17:12 +0800</pubDate><description><![CDATA[给定一个数字，我们按照如下规则把它翻译为字符串：0 翻译成 “a” ，1 翻译成 “b”，……，11 翻译成 “l”，……，25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数，用来计算一个数字有多少种不同的翻译方法。

动态规划可以类比这道题，节省空间还借用了这道题的思想


class Solution:
    def translateNum(self, num: int) -&gt; int:
        quotient,  remainder = divmod(num,10)
]]></description><category></category></item><item><title><![CDATA[leetcode: 数组形式的整数加法（逐加与进位）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106631025</link><guid>https://blog.csdn.net/qqMiSa/article/details/106631025</guid><author>qqMiSa</author><pubDate>Mon, 08 Jun 2020 23:22:56 +0800</pubDate><description><![CDATA[对于非负整数X而言，X的数组形式是每位数字按从左到右的顺序形成的数组。例如，如果X = 1231，那么其数组形式为[1,2,3,1]。

给定非负整数 X 的数组形式A，返回整数X+K的数组形式。

PS：

1 &lt;= A.length &lt;= 10000
0 &lt;= A[i] &lt;= 9
0 &lt;= K &lt;= 10000
如果A.length &gt; 1，那么A[0] != 0


class Solution:
    def addToArrayFor...]]></description><category></category></item><item><title><![CDATA[leetcode: 最长连续序列（hash表）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106595339</link><guid>https://blog.csdn.net/qqMiSa/article/details/106595339</guid><author>qqMiSa</author><pubDate>Sat, 06 Jun 2020 23:55:03 +0800</pubDate><description><![CDATA[给定一个未排序的整数数组，找出最长连续序列的长度。

要求算法的时间复杂度为O(n)。

一刷:

暴力解法的话很简单的想到需要两层循环，时间复杂度为O(n)，这里可以利用hash表来存放原数组，将每次循环数组后的遍历操作变为hash索引操作，就可以将原本判断需要O(n)的时间降为O(1)


class Solution:
    def longestConsecutive(self, nums: List[int]) -&gt; int:
        nums_hash = set(nums)
.]]></description><category></category></item><item><title><![CDATA[leetcode: 顺时针打印矩阵（螺旋数组）]]></title><link>https://blog.csdn.net/qqMiSa/article/details/106569146</link><guid>https://blog.csdn.net/qqMiSa/article/details/106569146</guid><author>qqMiSa</author><pubDate>Fri, 05 Jun 2020 23:57:31 +0800</pubDate><description><![CDATA[输入一个矩阵，按照从外向里以顺时针的顺序依次打印出每一个数字。

ps:

0 &lt;= matrix.length &lt;= 100
	0 &lt;= matrix[i].length&lt;= 100
螺旋打印数组，可以围着打印一圈，注意循环条件


class Solution:
    def spiralOrder(self, matrix: List[List[int]]) -&gt; List[int]:
        if not matrix or not matrix[0]:
..]]></description><category></category></item></channel></rss>