8 kuaizi_sophia

尚未进行身份认证

暂无相关描述

等级
TA的排名 45w+

基数排序C++实现及改进思考

步骤将各待比较元素数值统一数位长度,即对数位短者在前补零;根据个位数值大小,对数组进行排序;重复上一步骤,依次根据更高位数值进行排序,直至到达最高位;特性稳定算法;适用于正整数数据(若包含负数,那么需要额外分开处理);对于实数,需指定精度,才可使用此算法。代码//基数排序(只适用于正数,此处不适用)voidradixSort(vector<in...

2019-03-12 23:33:58

LeetCode——160. 相交链表

编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表**:**在节点c1开始相交。示例1:输入:intersectVal=8,listA=[4,1,8,4,5],listB=[5,0,1,8,4,5],skipA=2,skipB=3输出:Referenceofthenodewithvalue=8输入解释:相交节点的值为8(...

2019-03-12 23:30:41

LeetCode——241. 为运算表达式设计优先级(递归)

给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果。你需要给出所有可能的组合的结果。有效的运算符号包含+,-以及*。示例1:输入:"2-1-1"输出:[0,2]解释:((2-1)-1)=0(2-(1-1))=2示例2:输入:"2*3-4*5"输出:[-34,-14,-10,-10,10]解释:(...

2019-03-12 23:26:57

LeetCode——455分发饼干(贪心算法)

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值gi,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸sj。如果sj>=gi,我们可以将这个饼干j分配给孩子i,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。注意:你可以假设胃口值为正。一个小...

2019-03-12 23:22:03

LeetCode——75颜色分类(荷兰国旗问题)

给定一个包含红色、白色和蓝色,一共n个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数0、1和2分别表示红色、白色和蓝色。输入:[2,0,2,1,1,0]输出:[0,0,1,1,2,2]voidsortColors(vector<int>&nums){//荷兰国旗问题...

2019-03-12 23:20:13

LeetCode——前K个高频元素(桶排序)

桶排序方法vector<int>topKFrequent(vector<int>&nums,intk){//用哈希map记录每个数字出现的次数unordered_map<int,int>hashmap;vector<int>result;intmaxCount=0;f...

2019-03-12 23:18:16

LeetCode——数组中的第K个最大元素(快速排序和堆排序实现)

快速排序实现//分区intpartition(vector<int>&array,intleft,intright){//选择最右的元素作为基准值intpovit=array[right];inti=left,j=right-1;while(i<=j){if(arr...

2019-03-12 23:17:08

LeetCode——求二叉树最小深度

递归实现intminDepth(TreeNode*root){//递归实现if(!root){return0;}elseif(!root->left&&!root->right){return1;}elseif(!root->left){...

2019-03-12 23:13:58

十大经典排序算法及C++实现

十大经典排序算法1、冒泡排序步骤从头开始,每次比较两元素,若大者在前,则交换两元素,直至数组末尾,此时最大元素为数组最后的元素;重复以上步骤,从头开始至上一轮比较的末尾元素;性质稳定算法;代码//冒泡排序voidbubbleSort(vector<int>&array){for(size_ti=0;i<array...

2019-02-26 22:42:36

降低模型“过拟合”、“欠拟合”风险的方法

过拟合:指模型对于训练数据拟合呈过当的情况,反映到评估指标上,是模型在训练集上表现很好,但在测试集和新数据上表现较差,在模型训练过程中,表现为训练误差持续下降,同时测试误差出现持续增长的情况。欠拟合:指模型对于训练数据拟合不足的情况,表现为模型在训练集和测试集表现都不好。如上图所示,从左至右,依次为欠拟合、正常模型、过拟合情况,欠拟合情况中,拟合蓝线没有很好地捕捉到数据的特征,不能很好地拟合...

2018-12-26 11:30:16

分类和回归模型常用的性能评价指标

在预测任务中,给定样例集D={(x1,y1),(x2,y2),…,(xm,ym)}D=\lbrace(x_1,y_1),(x_2,y_2),\ldots,(x_m,y_m)\rbraceD={(x1​,y1​),(x2​,y2​),…,(xm​,ym​)},其中yiy_iyi​是示例xix_ixi​的真实标记,mmm表示样例数量,m+m^+m+、m−m^-m−分别表示正例和反例的数量。回归任务...

2018-12-10 16:37:41

分类任务中数据类别不平衡问题的几种解决方案

类别不平衡(class-imbalance),是指分类任务中不同类别的训练样例数目差别很大的情况(例如,训练集正类样例10个,反类样例90个),本文假设正类样例较少,反类样例较多。现有解决方案大体分为三类,如下文所示。欠采样(undersampling)欠采样方法,即去除一些反类样例,使得正、反类样例数量接近。EasyEnsemble为欠采样的代表性算法,利用继承学习机制,将反例划分为若干...

2018-12-08 16:49:00

多分类问题学习器拆分策略

多分类问题学习器拆分策略对于NNN个类别C1,C2,…,CNC_1,C_2,\ldots,C_NC1​,C2​,…,CN​,多分类学习的基本思路是拆解法,即将多分类任务拆分成若干个二分类任务求解,拆分策略如下所示:一对一(Onevs.One,OvO)将NNN个类别两两配对,产生N(N−1)/2N(N-1)/2N(N−1)/2个二分类任务,每个任务使用一个二分类学习器进行学习;多个二分...

2018-12-07 20:55:07

数据集的训练集和测试集划分

数据集的训练集和测试集划分留出法(hold-out)留出法,直接将数据集DDD划分为两个互斥的集合,其中一个集合作为训练集SSS,另一个作为测试集TTT,一般做法是将2/3~4/5的样本作为训练集,其余部分作为测试集;在使用留出法时,一般采用多次随即划分、重复进行实验评估后,取平均值作为留出法的评估结果。交叉验证法(crossvalidation)交叉验证法,或kkk折交叉验证法(k-...

2018-12-07 18:05:21

Neural Baby Talk学习笔记

NeuralBabyTalk学习笔记[1803.09845]NeuralBabyTalk1、介绍深度学习时代采用LSTM模型,过分依赖languagemodel,导致caption经常与图像内容关联不够。深度学习之前更依赖图像内容,而对languagemodel关注不多,例如采用一系列视觉检测器检测图像内容,然后基于模板或者其他方式生成caption作者观点...

2018-11-16 14:03:48

BLEU机器翻译评价指标学习笔记

BLEU机器翻译评价指标学习笔记BLEU(bilingualevaluationunderstudy),双语互译质量评估辅助工具,主要用来评估机器翻译质量的工具。评判思想:机器翻译结果越接近专业人工翻译的结果,则越好。实际工作:判断两个句子的相似程度。计算公式:BLEU−N=BP⋅exp(∑n=1Nwnlogpn)BLEU-N=BP\cdotexp\Big(\sum_{n=1}...

2018-11-09 17:09:15
勋章 我的勋章
    暂无奖章