剑指offer
文章平均质量分 69
每天分享一道剑指offer算法题目的解析、思路
qq_63992577
研0,准备更新机器学习、深度学习相关知识
展开
-
剑指offer-旋转数组中的最小值
例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一次旋转,该数组的最小值为 1。很明显,本题的题目只是要求我们返回这个数组的最小元素,这时候直接for循环,一个一个比较,总能得出数组中最小的元素吧?注意,数组 [a[0], a[1], a[2], …, a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], …, a[n-2]]。输入:numbers = [3,4,5,1,2]输入:numbers = [2,2,2,0,1]原创 2023-03-27 19:51:08 · 407 阅读 · 0 评论 -
剑指offer-二维数组中的查找
如图所示,题目给出的是没一行都按照从左到右非递减的顺序排列,就是说其实这个数组在一维的角度来说是有顺序的,当然二维也有,仔细观察就能发现————用处就是,我们的二分法在应用的时候就需要有顺序的数组,明白了吗?想法:确实无脑暴力可解,但是这里的执行用时感觉不对劲,两层for循环,时间复杂度O(n*m),应该不算快才对。☕️每日一语:这个世界本来就不完美,如果我们再不接受不完美的自己,那我们要怎么活。这里在每一行上都使用了二分法,就是在每次for循环,在循环行的时候对行进行二分法。原创 2023-03-26 22:43:13 · 639 阅读 · 1 评论