算法

贪心算法 —— 背包问题

一、问题描述:有一堆宝物,用车去装载,一次运完(不能超过车的最大承重),要求运走价值高的宝物 这里因为物体是可分割的,所以我采用贪心算法。由题目可以得出,应该选取性价比最高的物品,即:价值/重量要最大才行。所以思路就出来了,每次选择性价比高的物品,如果其重量小于车的载重就装,如果大于就分割,部分装入。话不多说,直接上代码。 二、代码如下: #include #include using names... »

【JAVA基础】【算法】冒泡排序_优化排序,二分法查找_折半检索

Java基础–基本算法 JAVA主要作为一个后端语言,对逻辑和基本算法的要求是明显高于前端程序员的(个人认为),所以大家平常逻辑性不太好的就需要多多复习和学习来提高自己的水平。 1.冒泡排序(优化排序) 冒泡排序是最常用的排序算法,再笔试中也非常常见,能手写出冒泡排序可以说是基本的素养。 算法重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,这样越大的元素会经由交换慢... »

算法——动态规划

算法———动态规划 动态规划是程序竞赛中出现最多的设计范式之一,要想使用动态规划解决问题,首先要明白解决动态规划问题的类型 重复子问题性质 在被解决的问题中,可以被分为很多的子问题,和分治法不同,动态规划中的有些子问题的计算结果可以用来计算多个问题的解,把这些子问题的计算结果保存起来,重复利用这些计算结果,避免程序的重复调用和计算。 适用于制表的情况 程序函数与数学函数不同,对于数学函数,我们输入... »

算法训练 Bit Compressor (dfs 剪枝)

试题 算法训练 Bit Compressor 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述   数据压缩的目的是为了减少存储和交换数据时出现的冗余。这增加了有效数据的比重并提高了传输速率。有一种压缩二进制串的方法是这样的:   加粗样式将连续的n个1替换为n的二进制表示(注:替换发生当且仅当这种替换减少了二进制串的总长度)   (译者注:连续的n个1的左右必须是0或者是串的开头... »

在这里插入图片描述

用Python实现KNN算法

用Python实现KNN算法 最近在玩imbalance的时候,看到imbalanced-learn中牵扯到了KNN算法,所以,就把KNN仔细地研究了一下。首先,KNN算法原理比较简单,通俗易懂。当然,在实现算法的过程中,参考了sklearn的代码风格,这里不得不说,sklearn真是简约大方,实用方便。 k-近邻算法(k-Nearest Neighbour algorithm),又称为KNN算法... »

遗传算法在黑盒测试中的应用

遗传算法在黑盒测试中的应用

  在软件测试中,黑盒测试主要是针对模块进行的功能测试。普遍的方法是以软件的功能说明书为基础将软件的输入划分为若干个等价类,多次运行该软件来检验软件对于不同的等价类是否能满足要求。但是在实际应用中,有的模块太大或输入参数太多,等价类划分后需要进行的测试工作可能是一个极大的任务。这时,如何选择优的测试用例成为测试人员的一个重要任务。   遗传算法是模仿生物遗传和进化机制的一种优化方法,它把类似于遗传... »

Java图片上查找图片算法

  之前用按键精灵写过一些游戏辅助,里面有个函数叫FindPic,上在屏幕范围查找给定的一张图片,返回查找到的坐标位置。   现在,Java来实现这个函数类似的功能。   算法描述:   屏幕截图,得到图A,(查找的目标图片为图B);   遍历图A的像素点,根据图B的尺寸,得到图B四个角映射到图A上的四个点;   得到的四个点与图B的四个角像素点的值比较。如果四个点一样,执行步骤4;否则,回到步骤... »

算法测试之商品标签质量测试

随着算法的两版优化,测试这边也积累了一些测试指标。6、标签召回率同品牌标签召回率,标签召回率同样是建立一个标签词库,然后看算法产出的品牌标签覆盖标签库的比率。7、训练模型精确性这个应该是算法开发同学自测点。这些测试点难的是标签库的建立。 »

算法分析

算法分析是一个软件的验证确认任务,用于保证选择的算法是正确的、合适的和稳定的,并且满足所有精确性、规模和时间方面的要求。没有输出的算法是毫无意义的; 5、可行性: 算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成一个好的算法分析可以保证产品高质量高效率的运行。 »

Java实现 蓝桥杯 算法训练 字符串合并

试题 算法训练 字符串合并资源限制时间限制:1.0s 内存限制:256.0MB问题描述输入两个字符串,将其合并为一个字符串后输出。HelloWorld样例输出HelloWorld数据规模和约定输入的字符串长度0<n<100PS:水水更健康package com.company;import java.util.Scanner;public class 字符串合并 }作者:南 ... »

Java实现KMP算法

/** * Java实现KMP算法 * * 思想:每当一趟匹配过程中出现字符比较不等,不需要回溯i指针, * 而是利用已经得到的“部分匹配”的结果将模式向右“滑动”尽可能远 * 的一段距离后,继续进行比较。 * * 时间复杂度O(n+m) * */ public class KMP { //通过计算返回字串t的next数组 public int[] ... »

Miller-Rabin随机性素数测试算法

  普通的素数测试我们有O(√ n)的试除算法。事实上,我们有O(slog3n)的算法。   定理一:假如p是质数,且(a,p)=1,那么a^(p-1)≡1(mod p)。即假如p是质数,且a,p互质,那么a的(p-1)次方除以p的余数恒等于1。(费马小定理)   该定理的逆命题是不一定成立的,但是令人可喜的是大多数情况是成立的。   于是我们得到了一个定理的直接应用,对于... »

SQL Server实现短路径的搜索算法

SQL Server实现短路径的搜索算法

  这是去年的问题了,在整理邮件的时候才发现这个问题,感觉顶有意思的,特记录下来。 图1   解析   为了能够更好的描述表RelationGraph中字段Node和 RelatedNode的关系,我在这里特意使用一个图形来描述,如图2 图2   在图2,可清晰的看出各个节点直接如何相连,也可以清楚的看出节点"p"至节点"j"的的几种可能路径。   从上面可... »

在这里插入图片描述

Java实现 蓝桥杯 算法提高 宰羊

试题 算法提高 宰羊资源限制时间限制:1.0s 内存限制:256.0MB问题描述炫炫回了内蒙,肯定要吃羊肉啦,所有他家要宰羊吃。炫炫家有N只羊,羊圈排成一排,标号1~N。炫炫每天吃掉一只羊(这食量!其实是放生啦),吃掉的羊的邻居会以为它被放生了,然后又会告诉他们的邻居,这样一直传播下去,除非某个邻居已经被“放生”了。 »

程序员读研如何提高技术

  你想进什么公司,和你读什么计算机方向,关系不是很大。只要是理工科的学生,面对技术岗位,其实机会是差不多的。   至于你想什么职位,那显然和你的专业/方向关系较大,比如说很多大数据职位,明确表示要求你DM/ML/NLP/IR背景,但是这也只是说这些学生可能更有优势些,事实上,数学和统计学出身的,很多搞这个非常牛逼的。   所以,不要问选什么导师,选什么方向;也不要问我的实验室很水老板很菜我还能找... »

种子填充算法描述及C++代码实现

种子填充算法描述及C++代码实现

  项目需要看了种子填充算法,改进了算法主要去除面积小的部分。种子填充算法分为两种,简单的和基于扫描线的方法,简单的算法如下描述(笔者针对的是二值图像):   (1)从上到下,从左到有,依次扫描每个像素;   (2)遇到一个非零数值压栈,并置原图像像素点值为0,面积初始化为1;否则,处理完毕。   (3)对栈非空查找,如果非空弹出栈顶,检测4领域或8领域,如果非空压栈,并置原图像像素点为0,标示不... »

递归算法是什么?

递归算法是什么?

Java递归算法是基于Java语言实现的递归算法。递归算法的实质是把问题分解成规模缩小的同类问题的子问题,然后递归调用方法来表示问题的解。递归算法,其实说白了,是程序的自身调用。递归算法解决问题的特点:1)递归是方法里调用自身。递归次数过多容易造成栈溢出等,所以一般不提倡用递归算法设计程序。 »

【LintCode 题解】亚马逊中国二面算法题 :链表划分

一面主要是过往自己认为最优秀的项目讲解,问的比较细;二面两个算法题比较简单,一个是LintCode 96原题,另一个是给定一组区间表示登陆登出时间,求同时段最大在线人数。下面主要看下这道题在LintCode上的解法。题解双指针方法,用两个指针将两个部分分别串起来。 »

结对开发?电梯调度问题需求分析

结对开发?电梯调度问题需求分析

3.一个关于电梯调度提示:当总重量在45公斤的大限制,或乘客的数量已经在大,电梯不需要更多的外部请求停止。4.电梯调度程序不知道有多少乘客等待每层,它不知道有多少乘客将出现。2.当前电梯的状态显示。4.电梯的限重报警。5.电梯超过限重后,不会再响应外界请求。下面是调研结果记录表:在高峰期,乘客很多,平均一个电梯有12个左右,很挤。 »

怎样测试程序的平均性能

  标准库中的sort函数,是快速排序算法的典型实现。算法将含有n个元素的序列排序,平均需要O(nlogn)时间。   上周,我提出了“测试一个程序的性能比测试其功能更难”这个观点。确认程序的性能达到标准以及确定“标准”的含义都十分困难。   接下来,我会继续讨论标准库中的sort(排序)函数。sort函数实现了快速排序算法,快速排序算法平均可以在O... »

测试用例算法的优改进思路

佳的测试用例的选择问题是选择满足所需的覆盖准则的情况下测试用例的小数量。现有的测试用例集选择方法在回归测试中不能确保测试用例集派生是优的。当对一个顺序的面向对象程序应用结构测试时,测试用例编写基于该模块的路径。然而,目前并没有现成的并发的Java程序测试用例的生成方法。 »

在这里插入图片描述

【算法图解】——图、广度优先搜索并实现搜索

文章目录图无向图和有向图广度优先算法问题解决步骤实现图实现广度优先搜索 图 节点(node)和边(edge) 代表着一种连接关系 解决的问题:最短路径,象棋中将对方将死最少步数 无向图和有向图 无向图互为邻居 广度优先算法 通过图的连接关系,一步一步搜索 问题解决步骤 使用图建立问题模型 使用广度优先算法解决问题 实现图 利用字典实现图 注意:peggy是alice的邻居,但alice不是pegg... »

HTTPS 加密算法原理机制解析

HTTPS 加密算法原理机制解析

  当你在浏览器的地址栏上输入https开头的网址后,浏览器和服务器之间会在接下来的几百毫秒内进行大量的通信。InfoQ的这篇文章对此有非常详细的描述。这些复杂的步骤的第一步,是浏览器与服务器之间协商一个在后续通信中使用的密钥算法。这个过程简单来说是这样的:   浏览器把自身支持的一系列Cipher Suite(密钥算法套件,后文简称Cipher)[C1,C2,C3, …]发给服务器... »

C++11新增的一些便利的算法

  c++11新增加了一些便利的算法,这些新增的算法使我们的代码写起来更简洁方便,这里仅仅列举一些常用的新增算法,算是做个总结,更多的新增算法读者可以参考http://en.cppreference.com/w/cpp/algorithm。   算法库新增了三个用于判断的算法all_of、any_of和none_of:   template< class InputIt, class Una... »

SQL LIKE语句多条件贪婪匹配算法

SQL LIKE语句多条件贪婪匹配算法

  在CMS开发中,经常会有类似这样的需求:   提问——回答模式,经典的例子是百度提问。   提问者提出问题,由其他人回答,其他人可以是用户,也可以是服务商。   在这个模式中,如何充分利用历史数据是关键的技术。很多时候,由于客户不擅长使用搜索功能,一上来提问,而这些问题往往早已经有近乎完美的答案,但没有充分利用。这样一来,不仅加大了劳动量,又增加了数据冗余。   如果在... »

Page 1 of 69123»