算法
decouples
这个作者很懒,什么都没留下…
展开
-
小白鼠喝药问题
题目:大概是这样:有100瓶水,其中只有一瓶含有毒药,小白鼠喝下毒药水后会在1小时内死亡,那么如何用最少数量的小白鼠在1小时内找出这瓶毒药水?1、常规思路假设有n只小白鼠可用于试毒,编号1~n,那么运用排列组合,根据小白鼠的生存状态判断,我们做出如下尝试:1只小白鼠,只能测试其中1瓶水是否含毒,即 21−12^{1}-121−1瓶;2只小白鼠,分别先测试其中的2瓶水,再同时测试第3瓶水,最多可测试22−12^{2}-122−1瓶;3只小白鼠,分别先测试其中的3瓶水,再两两结合分别测试其他的3瓶水原创 2020-07-15 22:22:23 · 2594 阅读 · 1 评论 -
消除相邻字符
字符串消消乐?给定一个字符串,删除相邻两个相同的字符。例如:给定: “abbabc”输出:“bc"思路:1、乍一看,是不是应该挨个便利,每次遍历消去原始就两两相邻的,在第二遍来消除剩下的,直到没有相同的,咋直到消除完了?直接看某一次长度不在变化,可能来个flag 辅助判断。会遍历几次?两两相消,那么最多字符串的一半那么多次。2、想一想,其实遍历那么多次是不是不需要的,每次找到相邻的以后,直接消除,消除后下一个和之前没有消除的比较,看相同不,直到到达字符串结尾。刚好栈就可以完成这一任务注意点:原创 2020-07-14 21:12:22 · 1565 阅读 · 0 评论 -
删除单链表指定元素
题目:给定单链表,删除链表中指定等于指定元素的节点。代码:/** * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ListNode* removeElements(ListNode* head, int target) { if (head != NULL && head->val == ta原创 2020-07-14 17:53:50 · 6517 阅读 · 5 评论 -
机器学习样本不平衡如何处理?
问:在机器学习训练时候,有时候会出现正负样本极其不平衡的情况,什么情况下会出现这种情况?有何有效的方法避免此类问题?答:场景:在一般人群中生病vs没病;在一般工作状态下故障vs无故障;在一般交易中正常vs欺诈,等。解决方法:1、收集更多或不同的数据。2、生成合成的样本。3、数据重采样。4、将性能指标更改为混淆矩阵、精确性和召回率。f1得分,kappa,roc曲线等。5、采用内建非平...原创 2020-05-01 12:19:56 · 1035 阅读 · 0 评论 -
最长子串
题目:有一些由英文组成的大小写敏感的字符串,找到一个最长的子串,使得对于已经给出的字符串中任意一个串y,x或者是y的子串,或者x中的字符串反序之后得到的新串是y的子串。输入:第一行表示测试的组数t第二行表示字符串的个数n接下来n行表示字符串样例:23ABCDBCDFFBRCD2roseorchid输出22代码:#define _CRT_SECURE...原创 2018-11-05 13:27:14 · 2612 阅读 · 0 评论 -
2019年校招:漫道金服数据模型工程师校招笔试
数据模型工程师笔试题目一、基础数据能力考察1、互联网和传统行业数仓的差异?(选做)2、雪花模型与星型模型的差别?(选做)3、有如下表:TABLE_USER,表的内容包含:MEMBER_ID、ID_CARD、ID_CARD_NAME。(1)取ID_CARD,ID_CARD_NAME重复值。(2)取top5与后top5。4、按要求写SQL:表A如下, USER_ID(ID,...原创 2018-11-11 10:32:28 · 881 阅读 · 2 评论 -
2019年校招:万得信息AI算法工程师
AI算法工程师分为笔试与面试:笔试题目:请设计一个热门股票榜单,使其能够实时的反映当前股票市场对各支股票的关注度。可使用的数据:包括但是不限于用户访问股票的日志行为记录等。请描述:如何选取数据、数据预处理、构造特征、选择算法,以及如何对效果进行评估?答:面试涉及的主要问题:今日头条的热搜榜单是根据什么特征来排序的,或者说你认为他是如何来排序热搜的?答:先挖个坑,改日再给...原创 2018-11-14 22:39:50 · 2332 阅读 · 0 评论 -
只使用++实现减法、乘法、除法操作
在只容许使用++操作符号的情况下。请完成下面代码,实现减法、乘法、除法。注意:假设操作数全为正数,并且可以不考虑性能。不能使用--、*、/等操作符。a)乘法int multi(int op1,int op2){//op1*op2}b)减法int sub(int op1, int op2){//op1 - op2}c)除法int div(int op1, int op2){//o...原创 2018-12-05 21:11:10 · 701 阅读 · 0 评论 -
面试常见简单编程题目
简单介绍一下一些常见编程的思路,比较简单,一般只要求说出思路,基本看完可以较快写出代码。一个数组存着1-1000连续的整数,假如我取出其中一个数,怎么能快速找到 //用类二分查找1~n这n个数现在去掉两个,如何找到去掉的两个数。// 假设去掉的两个数是a和b,那么通过求和,平方和可以知道a+b和a^2 \+b^2,然后解方程就行了。char a[4] = {1, 2, 3, 4}; cha...原创 2018-12-06 19:20:02 · 9440 阅读 · 0 评论 -
用XGBoost进行二分类
数据:dataset_001.csv问题介绍:目的是判断病人是否会在 5 年内患糖尿病,给出的数据为csv文件,一共9列数据,这个数据前 8 列是变量,最后一列是预测值为 0 或 1。代码:## Indians_xgboost.pyfrom numpy import loadtxtfrom xgboost import XGBClassifierfrom sklearn.model_...原创 2019-01-09 15:04:39 · 22713 阅读 · 3 评论 -
大数问题:大数加法、乘法、除法
大数加法问题描述:求两个不超过200位的非负整数的和举例: 1 2 3 4 5 6 7 8 9+1 2 3 4 5 6 7 8 9--------------------------2 4 6 8 10 12 14 16 18首先存的时候为:9 8 7 6 5 4 3 2 1+ 9 8 7 6 5 4 3 2 1;原因是最高位可能存在进位,所以需要倒叙存储。最后进位...原创 2019-03-07 16:56:31 · 495 阅读 · 0 评论 -
SSD:运行你的第一个SSD模型进行目标检测
案例1:仅仅测试该案例适合于你只是想测试一下SSD,用几张自己的图测试,得到结果,不自己训练模型。代码1使用方法:本人环境:默认是装的ubuntu、安装了tensorflow-gpu、cuda、cudnn等环境、anacond3(py3.x)下载好代码后,进入./checkpoint文件夹,解压文件。unzip ssd_300_vgg.ckpt.zip打开终端,启动jupyte...原创 2019-03-27 16:42:42 · 2167 阅读 · 1 评论 -
DCM4CHEE PACS服务器搭建
DCM4CHEE PACS服务器搭建安装依赖软件及版本:win10 64 、MySQL Server 5.6、JDK 1.6 Update 25、JBoss 4.2.3 GA for JDK 6、dcm4chee-2.17.3软件说明:dcm4chee-2.17.3 DCM4CHEE的主程序PACS服务器dcm4chee-arr-3.0.12 DCM4CHEE 审计程序dcm4ch...原创 2019-07-13 00:34:49 · 3158 阅读 · 0 评论 -
Leecode 7_ReverseInteger
题目: 给定一个 32 位有符号整数,将整数中的数字进行反转。示例输入: 123输出: 321输入: -123输出: -321输入: 120输出: 21注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。思路:原数对10取模,然后除以10,直到为0。取得各位数,然后乘以10...原创 2018-11-07 20:38:41 · 205 阅读 · 0 评论 -
2019年校招:纵目科技算法笔试题
参考一家自动驾驶AI公司—纵目科技软件、算法笔试题一家自动驾驶AI公司—纵目科技软件、算法笔试题—猫鼠问题当时笔试感觉良好,但是遗憾没有接到面试通知,把笔试题目写出来给大家参考参考。试卷分为两部分,第一部分为必做题,第二部分选做两题Settion 1: SW Program Questions1、Implement the following macro to clear a 3...原创 2018-11-10 11:06:11 · 3150 阅读 · 0 评论 -
求最大公约数
求两个数的最大公约数输入两个数,输出最大公约数思路:利用初等数学GCD(a,b)=GCD(a,b mod a) 具体讲:a,b的最大公约数等于a, b%a的最大公约数,b%a ,a的最大公约数等于b%a, a%(b%a)最大公约数。直到某次求模等于0,最大公约数就是较小的那个数。采用循环求模的方式。int GCD(int a, int b) { int r; r = a % b;...原创 2018-11-04 20:12:48 · 326 阅读 · 0 评论 -
从(0,0)到(m,n)有多少种路径,棋盘问题
从(0,0)到(m,n)有多少种路径?题目从(0,0)到(m,n),每次走一步,只能向上或者向右走,有多少种路径走到(m,n)思路:递归的思想,在当前路径下,要么向右,要么向上,两种选择。//#include"stdafx.h"#include<iostream>#include<algorithm>#include<time.h&am原创 2018-10-04 11:34:53 · 13194 阅读 · 2 评论 -
Lecode01_two_sum
题目:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]参考答案:分析:由于是有序的数组,那么直接首尾元素相加,如果大于target,那么尾部元...原创 2018-10-18 12:07:49 · 185 阅读 · 0 评论 -
二叉树的先序、中序、后续、深度、广度遍历
1、二叉树的递归:先序,中序,后序遍历//树的结构定义struct TreeNode{ int data; struct TreeNode *lchild,*rchild;};void PreOrder(TreeNode *T){ if(T){ cout<<T->data<&原创 2018-10-28 19:28:32 · 341 阅读 · 0 评论 -
Leecode 235. 二叉搜索树的最近公共祖先(Lowest Common Ancestor of a Binary Search Tree)
思路:当root非空的时候三种情况1)两个节点均在root的左子树,此时对root->left递归求解2)两个节点均在root的右子树,此时对root->right递归求解;3)两个节点分别位于root的左右子树,此时为root。代码TreeNode* lowstCommonAncesstor(TreeNode* root,TreeNode* p,TreeNode* q)...原创 2018-10-28 22:10:58 · 171 阅读 · 0 评论 -
Leecode 102. 二叉树的层次遍历(Binary Tree Level Order Traversal)
题目: 给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]]代码:/** * Definition for a binary t...原创 2018-10-28 22:36:15 · 216 阅读 · 0 评论 -
逆序一个整数
逆序一个整数思路:很简单,就不讲了,见下面代码。int print_num_reverse(int num) { int temp=0,result=0; while (num) { temp = num % 10; result = result * 10; result += temp; num = num / 10; } return result;}...原创 2018-10-24 10:30:26 · 467 阅读 · 0 评论 -
求一个数对应二进制中0或1的个数
求一个数对应的二进制中,0或1的个数思路: 求1作与运算;求0作或运算//求1的个数void print_bin_one(int num){ int count=0; while(num){ num=num&(num-1); count++; } cout<<count<<endl;...原创 2018-10-24 10:57:24 · 769 阅读 · 1 评论 -
Leecode 55. 跳跃游戏(Jump Game)
题目:给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。输入: [2,3,1,1,4]输出: true解释: 从位置 0 到 1 跳 1 步, 然后跳 3 步到达最后一个位置。输入: [3,2,1,0,4]输出: false解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的最大跳跃长度...原创 2018-10-24 13:11:23 · 313 阅读 · 0 评论 -
猴子摘桃子问题
题目:小猴子下山,沿着下山的路有一排桃树,每棵树都结了一些桃子。小猴子想摘桃子,但是有一些条件需要遵守,小猴子只能沿着下 山的方向走,不能回头,每颗树最多摘一个,而且一旦摘了一棵树的桃子,就不能再摘比这棵树结的桃子少的树上的桃子。那么小猴子最多能摘到几颗桃子呢?举例说明,比如有5棵树,分别结了10,4,5,12,8颗桃子,那么小猴子最多能摘3颗桃子,来 自于结了4,5,8颗桃子的桃树。...原创 2018-10-24 14:10:05 · 1093 阅读 · 0 评论 -
将一句话里的单词进行倒置
实现一句话倒置:如下所示//输入I am a boy.//输出boy. a am I思路:用栈的后进先出的思想#include<iostream>#include<stack>#include<string>#include<sstream>using namespace std;int main(){ stack<...原创 2018-10-24 20:24:05 · 1094 阅读 · 0 评论 -
求:1-2+3-4+5-6...+n
思想:两个一组和为-1,如果能被整除那么就是 -n/2;如果不能被整除,那么就是 -n/2 + n;因为是int,所以会强制转化为整数,小数就自动舍弃,N是奇数是正数,直接加上最后一个数N就行。参考代码:int sum_N(int n) { if (n % 2 == 0) return -n / 2; else return -n / 2 + n;}...原创 2018-10-24 20:40:00 · 4260 阅读 · 0 评论 -
回溯法思路与示例
利用回溯方法生成子集,即对于每个元素,都有试探放入或不放入集合中的两个选择: 选择放入该元素,递归的进行后续元素的选择,完成放入该元素后续所有元素的试探;之后将其拿出,即再进行一次选择不放入该元素,递归的进行后续元素的选择,完成不放入该元素后续所有元素的试探。 本来选择放入,再选择一次不放入的这个过程,称为回溯试探法。 例如: 元素数组: nums = [1, 2, 3, 4, 5,…] ...原创 2018-08-19 15:52:07 · 1083 阅读 · 0 评论