暂时未有相关云产品技术能力~
CSDN博客专家,华为云云享专家,阿里云专家博主,51CTO专家博主,现为推荐算法工程师,研究领域为AI推荐算法、NLP、图神经网络等,发表EI会议论文一篇,CSDN博客访问量破100万。 CSDN博客id:山顶夕景 微信公众号:古道西风瘦码 知识星球:AI算法乐园
初级解法:用sort排序和用unique去重后for循环遍历一遍数组,如果当前和上一个数字之差为1,则count累加1;如果当前数字和上一个数字之差不为1,则重新设count为1计算。
其实用前序、中序、后序遍历都可以,另外递归注意有返回值。
上个月学过这个思路——10G数中找到前5G大的数。 找到前k大,建
二叉排序树的定义中注意不是左孩子小于当前结点,而是左子树上的所有结点值都小于当前结点,因此在递归遍历二叉树的同时需要保存结点权值的上界和下界——实现比较时不止比较子结点的值,也要与上下界比较。
取余的结果都是相同的;如果选不出这样三个整数,则这五个整数的权值为 -1。 现在给定 T 组数据,每组数据包含五个 0~9 范围内的整数,分别求这 T 组数据中五个整数的权值。
当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。
入门dp:最后一步要么跳一步,要么跳两步到终点,从而得到递推式即斐波那契数列。 d p [ i ] dp[i]dp[i]是青蛙跳上一个n级的台阶总共跳法数。
层次遍历:借助队列,先将根结点入队,然后循环出队首结点,并且将该结点的左子树和右子树加入队列中。 (1)题目要求输出每层的结点,而常规模板中的队列是各层结点混在一起的,所以为了区分每层,在原本模板的while里面加了个for循环——该for循环即将一层的结点存入layer数组中,之所以for的遍历次数即改层的结
(2)转移方程 d p [ i ] + = d p [ j − 1 ] ∗ d p [ i − j ] dp[i]+=dp[j-1]*dp[i-j]dp[i]+=dp[j−1]∗dp[i−j],j-1是j为头结点的左子树结点数,i-j是j为头结点的右子树结点数。注意这个式子是累加的过程。 (3)初始条件+边界情况
法一:直接使用stl的vector的unique去重,该去重函数不是直接删除重复元素,而是将相邻且重复的元素放入到vector的尾部,然后返回指向第一个重复元素的迭代器,所以要用erase删除尾巴的那些重复元素再统计size。
2.思路 要原地去掉数值为val的数,最浅显的暴力做法就是遍历到该数时直接依次将数组后面的数字往前移动一个,如下:
(1)不可以像以前(如pat1013)用vector数组存储邻接表(否则会报出下面的错误)——因为数组的元素可能是负数!!! 并木有vector<int,vector<int>>,所以使用map<int,vector<int>>adj存储邻接表,所以后面dfs用到的vis访问数组也是map<int,bool>类型而非vector<bool>vis。
对给定的字符串进行遍历,当遇到一个左括号时,后面需要有一个相同类型的括号与其匹配,并且后遇到的左括号要先匹配,所以可以使用一个栈(先进后出,后进先出)。
重点掌握:(务必熟悉底层机制原理) 指针和引用的概念
众所周知,在打ACM比赛的时候,队伍只要通过了一个题,志愿者们就会送过来相对应颜色的气球 (志愿者小姐姐好漂亮QAQ) 现在刚刚进行完一场ACM比赛,PIPI拿到了所有的气球颜色,但是他想知道哪个题通过的人最多,你能告诉PIPI通过队伍最多的题所对应的气球颜色吗?
核心思想:一池子管理子进程or线程(在服务器处于负载高峰期可以增加服务池大小,以适应新的客户端请求),减少CPU资源浪费在创建和销毁进程/线程的时间。
1)确定状态: 最后一步:无论机器人用什么方式到达右下角,最后的一步肯定是向右或者向下,即右下角坐标为( m − 1 , n − 1 ) (m-1,n-1)(m−1,n−1)时,机器人前一步一定是在( m − 2 , n − 1 ) (m-2,n-1)(m−2,n−1)或( m − 1 , n − 2 ) (m-1,n-2)(m−1,n−2)。 子问题:如下面所说。
2)状态转移方程 本题在dp入门中有讲,确定状态转移方程,如:若只有2元、5元、7元,现要拼成x元,状态转移方程就是f ( x ) = m i n ( f ( x − 2 ) , f ( x − 5 ) , f ( x − 7 ) ) + 1 f(x)=min ( f(x-2),f(x-5),f(x-7) )+1f(x)=min(f(x−2),f(x−5),f(x−7))+1,而本题是任何整数额的
一、Floyd算法 解决全源最短路径问题——求任意两点u、v之间的最短路径长度,dis[i][j]表示从顶点i到顶点j的最短距离,伪代码如下: 枚举顶点k
同一层可以有多个粉丝进行转发,所以显然用BFS合适。 基础题。不过写的时候出现了是三个傻逼BUG,实在该打! (1)在输入点的坐标的for循环时候忘记结点的编号是1~N,而不
(1)由于最后的输出要按权值从大到小排序,所以在读入时就事先对每个结点的子结点child进行排序,这样在遍历时就会优先遍历到权值大的子结点。 (2)递归过程中保存路径:使用path[]
基础题。 这类题也是直接DFS,不是像上次的【1079】&【1090】供应树DFS一样是到了叶子结点就进行“更新/结算”类型,这题直接利用DFS统计每层的结点个数即可。
处理海量数据常用【堆排序】: (1)不需要一次性将所有数据加载到内存中;
懂题目的输入,每行开头为当前结点i的叶子结点个数,若该首数字非0,则该行后面的数字都为i结点的叶子结点数组下标(也就是题目直接给出结点的编号,且结点的编号一定是0、1、…N-1,N为结点个数——不需要newNode函数,因为题目中给定的编号可以直接作为Node数组的下标使用);而若该首数字为0,则该行
(1)开一个vector数组fac存0^ p ,1^ p… i ^ p. (2)DFS: 分叉口:利用DFS对fac[index]进行选择,有“选”与“不选”两种选择,如果不选,则把问题转化为对fac[index]进行选择;如果选择,由于每个数字可以重复选择即下一次还能选择fac[index]。 递归边界:2个return,第一个满足sum == N且nowK==
C++后端开发面试 2019年8月:hello world,就记得opp的多态。 黑马视频《C++ 入门视频》1.5倍数,做笔记和作业,只是最基本的C++常用知识; 《C++Primer 5th》3个月过一遍,这本书相当不错,共分为 19 章:前 8 章为变量、循环等基本知识,第 9-12 章为标准库的知识比如容器算法等,第 13-19 章为设计、拷贝、重载等知识。纸质书上做笔记。 2019年12月买来《Effective C++》、《More Effective C++》、《STL 源码剖析》、《深度探索 C++ 对象模型》; 看完《C++Primer 5th》后就看《STL 源码剖析》,看
于设一个int型变量flag,然后2次遍历——第一次遍历第一条链表(全部结点的flag改从false改为true),第二次遍历第二条链表,如果当前结点的flag是true则马上break跳出for循环(千万别忘了break!!),当
出栈是否合法要满足:(1)能出栈(2)不超过栈的限制容量。 思路:模拟,将1~n依次入栈,在入栈中——如果入栈的元素恰好等于出栈序列当前等待出栈的元素,就让栈顶元素出栈,同时把出栈序列当前等待出栈的元素位置标记后移1位。 ——举个栗子:出栈顺序为3 2 1 7 5 6 4时,1入
出N本书的编号、书名、作者关键词、出版社及出版年份,然后根据某个除编号外的信息来查询所有满足该信息的书的编号,并要求按编号从小到大顺序输出。
若直接暴力解会超时!! 可以先算出T的个数(一层for
方法: 在“码云”右上角的新建仓库,找到最下面的“导入已有仓库”处
1 常用命令 $后为Shell环境命令,>后为MySQL命令。 第一步,连接数据库。
常见服务及对应的协议和端口号如下表: 服务 FTP 文件传输协议 TELNET 不安全的文
1.单词回顾
errand n 差事,差使,使命 anguish n 痛苦 v感到极其痛苦 bliss n福佑 v欣喜若狂
给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。 如果存在多个数字二进制中 1 的数目相同,则必须将它们按照数值大小升序排列。 请你返回排序后的数组。
二.算法思想 利用depth函数求解每个结点的二叉树高度,利用isBalanced函数:求解结点的左右子树的高度差是否≤1且递归遍历左右子树的结点是否平衡。
=1表示确认号字段ack有效(规定:在连接建立后所有传送的报文段都必须ACK=1)。 注意:
二.算法思想 (1)递归 每个结点的深度=max{左子树深度,右子树深度}+1,左(右)子树的“根结点”也是用这个公式实现,因此可以递归实现。
入门 使用Git前,需要先建立一个仓库(repository)。您可以使用一个已经存在的目录作为Git仓库或创建一个空目录。 使用您当前目录作为Git仓库,我们只需使它初始化。
SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。
一.题目:二叉树的最小深度
一.安装IDEA 官网选社区版下载,选择安装路径后
一.题目:对称二叉树
第一步,下载notebook,有两种办法,其一是在官网下载anaconda,因为电脑上已经之前已经安装好了python,所以选择了第二种方法,直接在cmd中输入 :pip install jupyter 就可以成功安装 如果输入命令但是不能安装的可能是python安装有问题,或者没有设
一.Django简介与安装 Win平台: “以管理员身份运行”cmd,执行 pip install django 1.Django库的小测和版本
应用提供交互体验 思考:云端一定有Web界面吗? 思考:云端一定提供浏览器浏览吗? 绝大部分应用情况
(1)线性回归的不足 对于一般地线性回归问题,参数的求解采用的是最小二乘法,其目标函数如下:
线性回归(Linear Regression)是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分 析方法。
网易财经上获得的上证指数的历史数据,爬取了20年的上证指数数据。 实验目的: 根据给出当前时间前150天