03 2020 档案

摘要:使用STL时,往往会大量用到函数对象,为此要编写很多函数对象类。而有的函数对象类只用定义一个对象,而且这个对象也只使用一次,那编写这样一个函数对象就很浪费了。而且有时这定义函数对象类的地方和使用函数对象的地方很远,不方便查看。 那对于使用一次的函数对象类,能不能直接在使用它的地方定义呢?lambda 阅读全文
posted @ 2020-03-31 22:36 牛犁heart 阅读(494) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 思路: 采用深度优先遍历的方式,获取左子树、右子树的深度,比较下,取大的,再加1 阅读全文
posted @ 2020-03-31 21:47 牛犁heart 阅读(421) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 统计一个数字在排序数组中出现的次数。 思路: 1、暴力搜索,遍历数组中的元素,相同则计数加1 4、这个方法思路很奇特,虽同样采用二分,但特点在于既然目的找int 类型的k值,那找k 0.5,k+0.5两 阅读全文
posted @ 2020-03-31 10:28 牛犁heart 阅读(148) 评论(0) 推荐(0) 编辑
摘要:在确保new动态分配的内存空间在使用结束之后,释放是一件麻烦事。C++11模板库的头文件中定义的智能指针,即shared_ptr模板,就是用来解决这个问题的。 它是将new运算符返回的指针p交给一个shared_ptr对象“托管”,就不用担心要在哪里写delete p语句 实际根本不需要编写这条语句 阅读全文
posted @ 2020-03-30 22:48 牛犁heart 阅读(286) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入两个链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的) 思路: 1、两个相交的链表呈Y型。找第一个公共结点,则第一个公共结点之 阅读全文
posted @ 2020-03-30 22:04 牛犁heart 阅读(118) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32M,其他语言64M 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 阅读全文
posted @ 2020-03-30 13:23 牛犁heart 阅读(278) 评论(0) 推荐(0) 编辑
摘要:C++ 引入了四种功能不同的强制类型转换运算符以进行强制类型转换:static_cast、reinterpret_cast、const_cast和dynamic_cast,当然C++为保持与C的兼容,也保留了C语法中强制类型转换运算符的写法。 C++引入新的强制类型转换机制,主要为是为克服C语言强制 阅读全文
posted @ 2020-03-29 22:37 牛犁heart 阅读(434) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写). 思路: 主要还是用hash(基本原理就是:使用一个 阅读全文
posted @ 2020-03-29 19:28 牛犁heart 阅读(306) 评论(0) 推荐(0) 编辑
摘要:机器学习算法速览表 1. 回归 普通最小二乘回归(OLSR) 线性回归 Logistic回归 逐步回归 多变量自适应回归样条曲线(MARS) 局部估计散射平滑(LOESS) 折刀回归 2. 正则 岭回归 最少的绝对收缩和选择算子(LASSO) 弹性网 最小角度回归(LARS) 3. 基于实例的,基于 阅读全文
posted @ 2020-03-29 15:55 牛犁heart 阅读(364) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 思路: 采用穷举的 阅读全文
posted @ 2020-03-29 11:17 牛犁heart 阅读(204) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 思路: 先基于字符串的排 阅读全文
posted @ 2020-03-28 22:30 牛犁heart 阅读(208) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希 阅读全文
posted @ 2020-03-28 13:48 牛犁heart 阅读(271) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数, 阅读全文
posted @ 2020-03-27 12:11 牛犁heart 阅读(209) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 思路: 这题思路很简单,先对数组进行sort排序,再返回前k个数即可 clas 阅读全文
posted @ 2020-03-27 10:52 牛犁heart 阅读(131) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则 阅读全文
posted @ 2020-03-26 20:47 牛犁heart 阅读(461) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述: 输入一个字符串 阅读全文
posted @ 2020-03-25 22:58 牛犁heart 阅读(210) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 思路: 本题解法将分两步来完成 中序遍历(LDR)对二叉搜索树进行遍历,并将整个节点存 阅读全文
posted @ 2020-03-25 12:23 牛犁heart 阅读(328) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会 阅读全文
posted @ 2020-03-24 21:07 牛犁heart 阅读(142) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 阅读全文
posted @ 2020-03-23 22:28 牛犁heart 阅读(335) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 思路: 注:二叉搜索树的特点是根节点大于左孩子,小于右孩子。后 阅读全文
posted @ 2020-03-22 19:31 牛犁heart 阅读(197) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 思路: 属于二叉树的广度优先遍历 1.广度优先遍历(参考:https://blog.csdn.net/TTdreamloong/article/d 阅读全文
posted @ 2020-03-22 11:34 牛犁heart 阅读(223) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的 阅读全文
posted @ 2020-03-21 21:32 牛犁heart 阅读(158) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 注意:保证测试中不会当栈为空的时候,对栈调用pop()或者min()或者top()方法。 思路: 阅读全文
posted @ 2020-03-20 22:20 牛犁heart 阅读(162) 评论(0) 推荐(0) 编辑
摘要:参考:https://zhuanlan.zhihu.com/p/83002088 量化交易系统的四个组成部分: 策略识别-找到策略,利用优势,决定交易频率 策略回测-获取数据,分析策略表现,修正偏差 执行系统-对接经济公司,实习自动化交易,将交易成本降至最低 风险管理-最佳资本配置,“下注规模”/凯 阅读全文
posted @ 2020-03-20 14:19 牛犁heart 阅读(1078) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3 阅读全文
posted @ 2020-03-20 11:20 牛犁heart 阅读(161) 评论(0) 推荐(0) 编辑
摘要:参考:https://www.cnblogs.com/feifeifeisir/p/10627474.html 正则表达式可以包含一些可选标志修饰符来控制匹配的模式。修饰符被指定为一个可选的标志。多个标志可以通过按位 OR(|) 它们来指定。如 re.I | re.M 被设置成 I 和 M 标志: 阅读全文
posted @ 2020-03-19 21:52 牛犁heart 阅读(884) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 阅读全文
posted @ 2020-03-19 20:27 牛犁heart 阅读(204) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 知识铺垫: 先来看下子树和子结构的概念 子树:只要包含了一个节点,就得包含这个节点下的所有节点 子结构:包含了 阅读全文
posted @ 2020-03-19 12:35 牛犁heart 阅读(309) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 思路: 一、设立pPoint1指向第一个链表,pPoint2指向第二个链表,newPoint作为新链表的指针 阅读全文
posted @ 2020-03-16 19:51 牛犁heart 阅读(119) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个链表,反转链表后,输出新链表的表头。 思路: 一、先遍历链表中的每一个元素,并依次放入vector容器中,然后再反序存入链表中 /* struct ListNode { int val; str 阅读全文
posted @ 2020-03-15 23:05 牛犁heart 阅读(181) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个链表,输出该链表中倒数第k个结点。 思路: 一个单链表,要输出倒数第k个结点,设立两个指针prePoint、lastPoint,让先行指针prePoint先走k-1次,然后lastPoint再和 阅读全文
posted @ 2020-03-14 22:29 牛犁heart 阅读(112) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变 思路: 一:1、找位置:evenP 阅读全文
posted @ 2020-03-13 22:21 牛犁heart 阅读(145) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 保证base和exponent不同时为0 思路:(考察代码的完整性,考验对数据处理的严谨性 阅读全文
posted @ 2020-03-12 22:34 牛犁heart 阅读(115) 评论(0) 推荐(0) 编辑
摘要:主要涉及到的内容有:数据处理(对空白数据进行填充:Imputer)、自定义转换器、pipeline的编写以及采用SVC及RandomForestClassifier进行分类预测 采用的数据集来自Kaggle的坦克尼克号的预测(Titanic challenge ) 读取数据 import os TI 阅读全文
posted @ 2020-03-12 20:16 牛犁heart 阅读(422) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 哎,已经去就掉进了误区,本以为还需要将该整数进行二进制转换,结果没想到掉到了坑里了。。。(勿入勿入) 思路: 第一种:将1与该整数的二进 阅读全文
posted @ 2020-03-11 22:36 牛犁heart 阅读(272) 评论(0) 推荐(0) 编辑
摘要:题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 比如n=3时,2*3的矩形块有3种覆盖方法: 思路: 当n= 1时,有F(1) = 1种方法 当n = 2时, 有F(2) = 2种方法 当n = 3时,有F( 阅读全文
posted @ 2020-03-10 21:14 牛犁heart 阅读(301) 评论(0) 推荐(0) 编辑
摘要:GridSearchCV,它存在的意义就是自动调参,只要把参数输进去,就能给出最优化的结果和参数。但是这个方法适合于小数据集,一旦数据的量级上去了,很难得出结果。这个时候就是需要动脑筋了。数据量比较大的时候可以使用一个快速调优的方法——坐标下降。它其实是一种贪心算法:拿当前对模型影响最大的参数调优, 阅读全文
posted @ 2020-03-10 14:37 牛犁heart 阅读(619) 评论(0) 推荐(0) 编辑
摘要:数据增强的方式有很多,比如对图像进行几何变换(如翻转、旋转、变形、缩放等)、颜色变换(包括噪声、模糊、颜色变换、檫除、填充等),将有限的数据,进行充分的利用。这里将介绍的仅仅是对图像数据进行任意方向的移动操作(上下左右)来扩充数据。 这里将使用scipy中的shift变换工具(from scipy. 阅读全文
posted @ 2020-03-10 14:20 牛犁heart 阅读(1171) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路:(重要是分析) 本题前提是n个台阶,会有n阶的跳发,分析如下: f(1) = 1 f 阅读全文
posted @ 2020-03-09 21:05 牛犁heart 阅读(215) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 思路:设置一个函数F(N)表示走到第N级台阶走法的数量,现在假设有10级台阶,有两 阅读全文
posted @ 2020-03-08 22:57 牛犁heart 阅读(189) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 思路: 首先想到的肯定是使用递归 class Solution { public: i 阅读全文
posted @ 2020-03-07 12:59 牛犁heart 阅读(210) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 32M,其他语言64M 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最 阅读全文
posted @ 2020-03-06 22:25 牛犁heart 阅读(165) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路: push操作中,将元素入栈stack1,pop操作时,将stack1中元素进行弹出,并存入stack2中,实 阅读全文
posted @ 2020-03-05 21:16 牛犁heart 阅读(161) 评论(0) 推荐(0) 编辑
摘要:定义 双均线策略,通过建立m天移动平均线,n天移动平均线,则这两条均线必有交点。若m>n,n天平均线“上穿越”m天均线则为买入点,反之为卖点。该策略基于不同天数均线的交叉点,抓住股票的强势和弱势时刻,进行交易。 对于每一个交易日,都可以计算出前N天的移动平均值,然后把这些移动平均值连起来,成为一条线 阅读全文
posted @ 2020-03-05 13:11 牛犁heart 阅读(9775) 评论(1) 推荐(0) 编辑
摘要:要求:时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32M,其他语言64M 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1, 阅读全文
posted @ 2020-03-04 21:35 牛犁heart 阅读(189) 评论(0) 推荐(0) 编辑
摘要:1、多标签分类 有些情况,会想让你的分类器给一个样例输出多个类别。比如思考一个人脸识别器,并识别出这个是谁。这就需要对于同一张图片,首先识别出有几个人,并给识别出的人贴上标签。这就是多个二值标签的分类系统被叫做多标签分类系统。 现在,我们打算使用MNIST数据做一个是否为大数字(大于6)、是否为奇数 阅读全文
posted @ 2020-03-03 12:13 牛犁heart 阅读(2069) 评论(0) 推荐(1) 编辑
摘要:1、多类分类 二分类器只能区分两个类别,多分类器则可以区分多余两个类别 一些算法(比如随机森林分类器或者朴素贝叶斯分类器)可以直接处理多分类问题,而其他的一些算法(比如SVM分类器或者线性分类器)择时严格的二分类器。当然也有许多策略让二分类器去执行多分类问题 "一对所有"(OvA)策略:创建一个将图 阅读全文
posted @ 2020-03-03 11:48 牛犁heart 阅读(1253) 评论(0) 推荐(0) 编辑
摘要:时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 思路一:从头遍历链表中的元素,并以此存入vector容器中,并进行反转(类似栈操作) /** * struct ListNode { * 阅读全文
posted @ 2020-03-01 22:38 牛犁heart 阅读(113) 评论(0) 推荐(0) 编辑