![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法趣题
Einstellung
这个作者很懒,什么都没留下…
展开
-
数的四则运算
我们希望组合计算得到一个结果,即将原数字各个数位上的数逆序排列得到的数,并且算式按照先乘除,后加减的顺序排列。比如,对于351而言, 3*51 = 153请问,对于1000~9999中的数,有哪个满足条件for x in range(1000, 10000): bcd = x % 1000 a = x // 1000 cd = x % 100 ab = x /...原创 2018-11-09 15:21:17 · 409 阅读 · 0 评论 -
Python剑指offer:数组中数值和下标相等的元素
'''假设一个单调递增的数组里的每个元素都是整数并且是唯一的。请编程实现一个函数找出数组中任意一个数值等于其下标的元素。例如,在数组{-3, -1, 1, 3, 5}中,数字3和它的下标相等。'''class Solution: def GetNumberSameAsIndex(self, data, num): if num < 0 or len(da...原创 2019-08-21 20:17:16 · 651 阅读 · 0 评论 -
Python剑指offer:和为s的连续整数序列
'''输入一个正数s,打印出所有和为s的连续正数序列(至少含有两个数)。例如,输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以打印三个连续序列,1-5,4-6,7-8'''class Solution: def FindContinuousSequence(self, num): # 要求至少是连续两个正数,所以输入的num不可能比3小 ...原创 2019-08-23 20:55:35 · 274 阅读 · 0 评论 -
Python剑指offer:分行从上到下打印二叉树
从上到下按层打印二叉树,同一层的节点按照从左到右的顺序打印,每一层打印到第一行,例如本题中上一个问题的二叉树输出形式会是:86 105 7 9 11这道题和前面一道题十分类似,也可以用一个队列来保存要打印的节点。为了把二叉树的每一行单独打印到一行里,我们需要两个变量:一个变量表示当前层中还没有打印的节点数;另一个变量表示下一层节点数。class TreeNode: def...原创 2019-07-21 17:22:19 · 758 阅读 · 0 评论 -
Python剑指offer:矩形覆盖问题
我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用8个21的小矩形无重叠的覆盖一个2*8的大矩形,共有多少种方法?* * * * * * * * ** * * * * * * * *这个*作为一个矩形的示意图。显然,这种大的问题我们可以分解成更小的问题,比如说,对于这个2*8的矩形放置方法f(8)而...原创 2019-05-09 09:49:18 · 225 阅读 · 0 评论 -
Python剑指offer:数组中重复的数字
题目一:找出数组中重复的数字在一个长度为n的数组里的所有数字都在0~n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3思路一解决这个问题一个简单方法是把输入的数组排序,将数组排序之后从排序的数组中找出重复的数...原创 2019-04-27 19:13:07 · 407 阅读 · 0 评论 -
LeetCode:3. Longest Substring Without Repeating Characters
https://leetcode.com/problems/longest-substring-without-repeating-characters/description/内容描述:Given a string, find the length of the longest substring without repeating characters.Example 1:Inpu...原创 2019-04-13 21:36:57 · 190 阅读 · 0 评论 -
LeetCode:2. Add Two Numbers
https://leetcode.com/problems/add-two-numbers/description/内容描述You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of th...原创 2019-04-13 12:07:42 · 186 阅读 · 0 评论 -
LeetCode:1. Two Sum
https://leetcode.com/problems/two-sum问题描述:Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exact...原创 2019-04-13 10:14:15 · 207 阅读 · 0 评论 -
感知机算法
第2章 感知机二分类模型f(x)=sign(w∗x+b)f(x) = sign(w*x + b)f(x)=sign(w∗x+b)损失函数 L(w,b)=−Σyi(w∗xi+b)L(w, b) = -\Sigma{y_{i}(w*x_{i} + b)}L(w,b)=−Σyi(w∗xi+b)算法随即梯度下降法 Stochastic Gradient Descent随机抽取一个误分类点...转载 2019-02-10 10:41:34 · 1124 阅读 · 0 评论 -
最小二乘法和正则化
最小二乘法和正则化高斯于1823年在误差e1 ,… , en独立同分布的假定下,证明了最小二乘方法的一个最优性质: 在所有无偏的线性估计类中,最小二乘方法是其中方差最小的!使用最小二乘法拟和曲线对于数据(xi,yi)(i=1,2,3...,m)(x_i, y_i)(i=1, 2, 3...,m)(xi,yi)(i=1,2,3...,m)拟合出函数h(x)h(x)h(x)有误差,即残差...转载 2019-02-03 22:48:46 · 4780 阅读 · 1 评论 -
切分木棒
假设要把长度为 n 厘米的木棒切分为 1 厘米长的小段,但是 1 根木棒只能由 1 人切分,当木棒被切分为 3 段后,可以同时由 3 个人分别切分木棒( 图2 )。求最多有 m 个人时,最少要切分几次。譬如 n = 8,m = 3 时如下图所示,切分 4 次就可以了。...原创 2018-11-13 20:24:45 · 655 阅读 · 0 评论 -
LeetCode215:数组中第K个最大元素
在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例:输入: [3,2,1,5,6,4] 和 k = 2输出: 5这个问题就是一个排序问题,下面尝试使用不同的排序方法来实现。快速排序class Solution: def findKthLargest(self, nums: List[int], k:...原创 2019-08-27 12:01:06 · 315 阅读 · 0 评论