文章目录题目描述输入描述输出描述用例题目解析JS算法源码Java算法源码python算法源码c算法源码c++算法源码题目描述小明来到某学校当老师,需要将学生按考试总分或单科分数进行排名,你能帮帮他吗?输入描述第1行输入两个整数,学生人数n和科目数量m。•0
2024年华为OD机试真题- 分月饼-(C++/Java/python)-OD统一考试(C卷D卷)
dijkstra2023
c++华为odpythonjava
2024华为OD机试真题目录-(B卷C卷D卷)-【C++JavaPython】题目描述中秋节,公司分月饼,m个员工,买了n个月饼,m≤n,每个员工至少分1个月饼,但可以分多个,单人分到最多月饼的个数是Max1,单人分到第二多月饼个数是Max2,Max1-Max2≤3,单人分到第n-1多月饼个数是Max(n-1),单人分到第n多月饼个数是Max(n),Max(n-1)–Max(n)≤3,问有多少种分
【纪念我的256天】我的创作纪念日
回响N
我的纪念日
今天是我在CSDN创作的第256天这大半年,我把技术探索的点滴都记录在这里。从最初的小心翼翼再到现在的逐渐熟练,都是我不断成长的过程,每一次敲击键盘都是成长的见证。这256天,看似不长,却在我的技术成长与个人发展历程中留下了深刻且不可磨灭的印记。收获与成长大概八个多月前,从我开始我的第一篇写作时我的人生轨迹似乎偏离了我原本的轨迹,从这里我学到很多,并且我的目标也渐渐的清晰了许多,从刚开始的每发一篇
最新指南,如何使用 ChatGPT 提示词指令进行学术写作
智写AI
AI学术写作指南chatgpt人工智能
第1部分:学术写作之旅:使用ChatGPTPrompts进行学术写作的结构化指南踏上学术写作过程的结构化旅程,每个ChatGPT提示都旨在解决特定方面,确保对您的主题进行全面探索。制定研究问题:“制定一个关于量子计算的社会影响的研究问题,确保清晰并与您的研究目标保持一致。制作大纲:“为一篇关于量子计算的社会影响的文章构建大纲,包括引言、正文段落和结论,确保逻辑流畅。进行文献综述:“总结量子计算的关
npm常用指令,npm 下载有问题?
悠悠~飘
npm
1.查看当前地址:npmconfiggetregistry2.设置当前地址(设置为淘宝镜像)注意:原来的https://registry.npm.taobao.org已替换为https://registry.npmmirror.com,因为2024年1月22日,淘宝原镜像域名(registry.npm.taobao.org)的HTTPS证书正式到期并更换为更为低调符合国家法律规定的镜像服务,这是一
立足西安,昇腾AI为开发者留下了脚印一串
科技前沿资讯
人工智能
“人工智能的时代,我能够成为推动世界发展的一支桨吗?”“我爱西安这座城市,而且在学校学习了那么多与IT开发相关的课程,未来我很希望能留在西安发展。”西安电子科技大学计算机学院的几名学生如是对笔者说。每个人在学校里都会有迷茫,不论你所学是什么,只有站在当下,脚踏实地方可仰望苍穹。他们也是如此,面对智能时代的变数,他们渴望去做更多的尝试。4月23日,以“创未来,享非凡”为主题的昇腾AI开发者创享日首站
瞄准K12阶段,日本生成式AI会弯道超车吗?
科技前沿资讯
人工智能
12月26日,日本正式将生成式AI的教育下沉到K12教育阶段,初等和中等教育阶段。指南全名为《中小学阶段生成式人工智能使用指南》,指南很长,涉及内容大体涵盖了生成式AI的基本理念、学校使用生成式AI的注意事项、教师与学生该如何使用AI等。在当前,人工智能的趋势是不可阻挡的。因此,任何试图抵抗AI发展的行为都会像当年的马拉火车一样,被技术抛在身后。因此,拥抱AI几乎是想要在未来有所突破的必然选择。而
Nacos深度剖析:配置及高可用方案全攻略
磐基Stack专业服务团队
NacosNacos
文章目录第1章Nacos服务端配置参数1.1全局参数1.2Naming模块参数1.3Config模块参数1.4CMDB模块参数第2章NacosClient配置参数2.1通用参数2.2Naming客户端2.3Config客户端第3章Nacos单机与集群3.1Nacos端口介绍3.2容器常用属性配置第1章Nacos服务端配置参数对于Server端来说,一般是设置在{nacos.home}/conf/a
Nacos 监控全攻略:从 Prometheus 数据采集到核心指标解读
磐基Stack专业服务团队
NacosNacos
文章目录第1章Prometheus采集Nacosmetrics数据第2章Nacosmetrics含义2.1jvmmetrics2.2Nacos监控指标2.3nacos异常指标2.4clientmetricsNacos2.X版本已有完善的监控体系,支持通过暴露metrics数据接入第三方监控系统监控Nacos运行状态,目前支持prometheus、elasticsearch和influxdb。下面重
【2024华为OD-E卷-100分-免单统计】(题目+思路+Java&C++&Python解析)
执着的小火车
2024华为OD-E卷华为odjavac++算法数据结构华为
题目描述2024华为OD-E卷-100分-免单统计某餐厅推出了一项优惠活动:每位顾客在餐厅消费满200元,即可获得一次免单抽奖机会。抽奖的规则是从一个装有红球和白球的箱子中随机抽取一个球,如果抽到红球则免单,抽到白球则不免单。已知箱子里红球和白球的比例是1:N(N表示白球数量是红球数量的N倍)。现在给你餐厅某天的顾客消费记录以及红球与白球的比例N,请你统计出该天免单的人数。输入输入的第一行为两个整
完美世界2024业绩预告:直面压力,积极转型谋新机
量子位
1月17日晚间,完美世界发布2024年度业绩预告。公告显示,公司去年全年实现营业收入55亿元至56亿元,归母净利润亏损11亿元至13亿元。公司利润承压,向高质量发展转型的短期压力仍然存在。尽管受到挑战,完美世界各业务的新产品还在稳定、保质推出,同时继续布局富有竞争力的后续储备产品。近年来,文娱行业市场竞争加剧,在游戏行业,用户内容消费需求日益升级,精品游戏的研发投入与开发周期持续提升,品质要求越来
Python 潮流周刊#78:async/await 是糟糕的设计(摘要)
python
本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。分享了12篇文章,12个开源项目,1则音视频,全文2200字。以下是本期摘要:文章&教程①游乐场智慧:线程击败Async/Await②Python真的很慢吗?③DjangoAsync:准备好用于生
Python 潮流周刊#79:Python 的元数据困境(摘要)
python
本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。分享了12篇文章,12个开源项目,2则热门讨论,全文2200字。以下是本期摘要:文章&教程①约束是好的:Python的元数据困境②TalkPython网站用Quart重写了③Python不仅是胶水
Python 潮流周刊#83:uv 的使用技巧(摘要)
python
本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。分享了12篇文章,12个开源项目,2则热门讨论,全文2300字。以下是本期摘要:文章&教程①UV的使用技巧②用pyinfra和ChimeraLinux开发一个小型CDN③高效的Python开发者工
Python 潮流周刊#65:CSV 有点糟糕(摘要)
python
本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。分享了12篇文章,12个开源项目,全文2000字。以下是本期摘要:文章&教程①CSV有点糟糕。DSV有点不错②用Scrapy和Playwright实现无限滚动页面的抓取③用Python作测试(第9
PCL 基于法线微分(DoN)的点云分割【2025最新版】
点云侠
PCL学习算法可视化聚类c++开发语言计算机视觉3d
法线微分一、算法原理1、DoN定义2、DoN算法3、DoN分割步骤4、参考文献5、论文描述二、代码实现三、结果展示1、法线可视化结果2、对应曲率信息可视化3、利用曲率分类结果可视化4、欧式聚类分割结果本文由CSDN点云侠原创,原文链接,首发于:2020年07月27日。抄袭狗把自己当个狗加油抄,抄袭狗抄哪一篇进自己的付费专栏,我就哪一篇永久免费开放。博客长期更新,本文最新更新时间为:2025年1月1
PCL 部分点云视点问题【2025最新版】
点云侠
PCL学习3d算法计算机视觉c++开发语言
目录一、问题概述二、解决方案1、软件实现2、代码实现三、调整之后博客长期更新,本文最近更新时间为:2025年1月18日。一、问题概述 针对CloudCompare软件处理过的pcd格式点云,在使用PCL进行特征点提取、配准等实验中最终显示结果出现点云位置偏差较大的问题,本博客给出解决方案。二、解决方案 PCL处理的pcd格式点云数据,默认视点为:VIEWPOINT0001000经CloudCo
【2024年华为OD机试】 (B卷,100分)- 流水线(Java & JS & Python&C/C++)
妄北y
算法汇集总结华为odjavajavascript游戏C++c语言python
一、问题描述题目描述一个工厂有m条流水线,来并行完成n个独立的作业,该工厂设置了一个调度系统,在安排作业时,总是优先执行处理时间最短的作业。现给定流水线个数m,需要完成的作业数n,每个作业的处理时间分别为t1,t2,...,tn。请你编程计算处理完所有作业的耗时为多少?当n>m时,首先处理时间短的m个作业进入流水线,其他的等待,当某个作业完成时,依次从剩余作业中取处理时间最短的进入处理。输入描述第
2024 RoboCom 睿抗机器人开发者大赛-编程技能赛-本科组(省赛)
wsh1c6
睿抗算法数据结构
RC-u1热҈热҈热҈热҈热҈热҈……最近热得打的字都出汗了!幸好某连锁餐厅开启了气温大于等于35度即可获得一杯免费雪碧的活动。但不知为何,在每个星期四的时候,这个活动会暂停一天……现在给定连续的若干天的气温情况以及给定的第一天是星期几,请你算出有多少天你可以喝到免费的雪碧,又有多少天是因为星期四而导致你喝不到雪碧的。输入格式:输入第一行是两个正整数N,W(1≤N≤50,1≤W≤7),表示给定连续
【cs.CV】25.1.14 arxiv更新速递
hinmer
CV每日更新arxivchatgptgpt人工智能自然语言处理自动驾驶计算机视觉ai
【cs.CV】25.1.14arxiv更新110篇—第1篇----=====Omni-RGPT:UnifyingImageandVideoRegion-levelUnderstandingviaTokenMarks关键词:计算机视觉,多模态大语言模型,区域级理解,TokenMark,视频理解链接1摘要:我们提出了Omni-RGPT,这是一种多模态大型语言模型,旨在促进图像和视频的区域级理解。为了在
MarsCode青训营打卡Day1(2025年1月14日)|稀土掘金-16.最大矩形面积问题
Aqua Cheng.
MarsCode青训营算法java
资源引用:最大矩形面积问题-MarsCode打卡小记录:今天是开营第一天,和小伙伴们组成了8人的团队,在接下来的数十天里相互监督,打卡刷题!稀土掘金-16.最大矩形面积问题(16.最大矩形面积问题)题目分析:这是一道双指针问题。给定一个有n个元素的array数组,其中的每一个元素都代表一个高度。现要求从array数组中任意选取k个相邻元素,定义它们所形成的最大矩形面积R(k)=k*min(k个元素
投具身智能大模型还是人形机器人本体,2025年资本如何抉择?
Robot251
机器人人工智能microsoft科技自动驾驶chatgpt
2025年已至,被誉为人形机器人商业化落地“元年”的2024年,实际商业化进展有所滞后;目前来看,头部人形机器人公司将2025年实现初步商业化,但仅仅指头部。2025年开年,国内具身智能赛道(人形机器人本体和具身智能大模型)迎来三笔融资,赛道仍旧火热,分别为:1月7日,人形机器人本体公司【傅利叶智能】完成近8亿元E轮融资;1月7日,具身智能机器人公司【智平方】完成数亿元Pre-A轮战略融资;1月9
2024,留给人形机器人的时间真不多了!
Robot251
机器人人工智能
2024年被国内一众科技媒体定义为人形机器人商业化元年。国外一众头部人形机器人企业在2024年一季度除了完成大额融资外,实现产品突破性进展,并与工业制造领域头部企业建立战略合作,瞬间引起一阵人形机器人赛道热潮,让诸多看客一度看到商业化希望;而擅长造势和吸引眼球的媒体,在此前提下,得出定论:2024年是人形机器人商业化元年。2024年具身智能领域的首个爆点是:1月4日,斯坦福大学发布开源机器人系统M
算法 单链的创建与删除
换个号韩国红果果
c算法
先创建结构体
struct student {
int data;
//int tag;//标记这是第几个
struct student *next;
};
// addone 用于将一个数插入已从小到大排好序的链中
struct student *addone(struct student *h,int x){
if(h==NULL) //??????
《大型网站系统与Java中间件实践》第2章读后感
白糖_
java中间件
断断续续花了两天时间试读了《大型网站系统与Java中间件实践》的第2章,这章总述了从一个小型单机构建的网站发展到大型网站的演化过程---整个过程会遇到很多困难,但每一个屏障都会有解决方案,最终就是依靠这些个解决方案汇聚到一起组成了一个健壮稳定高效的大型系统。
看完整章内容,
zeus持久层spring事务单元测试
deng520159
javaDAOspringjdbc
今天把zeus事务单元测试放出来,让大家指出他的毛病,
1.ZeusTransactionTest.java 单元测试
package com.dengliang.zeus.webdemo.test;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import
Rss 订阅 开发
周凡杨
htmlxml订阅rss规范
RSS是 Really Simple Syndication的缩写(对rss2.0而言,是这三个词的缩写,对rss1.0而言则是RDF Site Summary的缩写,1.0与2.0走的是两个体系)。
RSS
分页查询实现
g21121
分页查询
在查询列表时我们常常会用到分页,分页的好处就是减少数据交换,每次查询一定数量减少数据库压力等等。
按实现形式分前台分页和服务器分页:
前台分页就是一次查询出所有记录,在页面中用js进行虚拟分页,这种形式在数据量较小时优势比较明显,一次加载就不必再访问服务器了,但当数据量较大时会对页面造成压力,传输速度也会大幅下降。
服务器分页就是每次请求相同数量记录,按一定规则排序,每次取一定序号直接的数据
spring jms异步消息处理
510888780
jms
spring JMS对于异步消息处理基本上只需配置下就能进行高效的处理。其核心就是消息侦听器容器,常用的类就是DefaultMessageListenerContainer。该容器可配置侦听器的并发数量,以及配合MessageListenerAdapter使用消息驱动POJO进行消息处理。且消息驱动POJO是放入TaskExecutor中进行处理,进一步提高性能,减少侦听器的阻塞。具体配置如下:
highCharts柱状图
布衣凌宇
hightCharts柱图
第一步:导入 exporting.js,grid.js,highcharts.js;第二步:写controller
@Controller@RequestMapping(value="${adminPath}/statistick")public class StatistickController { private UserServi
我的spring学习笔记2-IoC(反向控制 依赖注入)
aijuans
springmvcSpring 教程spring3 教程Spring 入门
IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。
IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明:
如:程序中有 Mysql.calss 、Oracle.class 、SqlSe
TLS java简单实现
antlove
javasslkeystoretlssecure
1. SSLServer.java
package ssl;
import java.io.FileInputStream;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.security.KeyStore;
import
Zip解压压缩文件
百合不是茶
Zip格式解压Zip流的使用文件解压
ZIP文件的解压缩实质上就是从输入流中读取数据。Java.util.zip包提供了类ZipInputStream来读取ZIP文件,下面的代码段创建了一个输入流来读取ZIP格式的文件;
ZipInputStream in = new ZipInputStream(new FileInputStream(zipFileName));
&n
underscore.js 学习(一)
bijian1013
JavaScriptunderscore
工作中需要用到underscore.js,发现这是一个包括了很多基本功能函数的js库,里面有很多实用的函数。而且它没有扩展 javascript的原生对象。主要涉及对Collection、Object、Array、Function的操作。 学
java jvm常用命令工具——jstatd命令(Java Statistics Monitoring Daemon)
bijian1013
javajvmjstatd
1.介绍
jstatd是一个基于RMI(Remove Method Invocation)的服务程序,它用于监控基于HotSpot的JVM中资源的创建及销毁,并且提供了一个远程接口允许远程的监控工具连接到本地的JVM执行命令。
jstatd是基于RMI的,所以在运行jstatd的服务
【Spring框架三】Spring常用注解之Transactional
bit1129
transactional
Spring可以通过注解@Transactional来为业务逻辑层的方法(调用DAO完成持久化动作)添加事务能力,如下是@Transactional注解的定义:
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version
我(程序员)的前进方向
bitray
程序员
作为一个普通的程序员,我一直游走在java语言中,java也确实让我有了很多的体会.不过随着学习的深入,java语言的新技术产生的越来越多,从最初期的javase,我逐渐开始转变到ssh,ssi,这种主流的码农,.过了几天为了解决新问题,webservice的大旗也被我祭出来了,又过了些日子jms架构的activemq也开始必须学习了.再后来开始了一系列技术学习,osgi,restful.....
nginx lua开发经验总结
ronin47
使用nginx lua已经两三个月了,项目接开发完毕了,这几天准备上线并且跟高德地图对接。回顾下来lua在项目中占得必中还是比较大的,跟PHP的占比差不多持平了,因此在开发中遇到一些问题备忘一下 1:content_by_lua中代码容量有限制,一般不要写太多代码,正常编写代码一般在100行左右(具体容量没有细心测哈哈,在4kb左右),如果超出了则重启nginx的时候会报 too long pa
java-66-用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。颠倒之后的栈为{5,4,3,2,1},5处在栈顶
bylijinnan
java
import java.util.Stack;
public class ReverseStackRecursive {
/**
* Q 66.颠倒栈。
* 题目:用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。
* 颠倒之后的栈为{5,4,3,2,1},5处在栈顶。
*1. Pop the top element
*2. Revers
正确理解Linux内存占用过高的问题
cfyme
linux
Linux开机后,使用top命令查看,4G物理内存发现已使用的多大3.2G,占用率高达80%以上:
Mem: 3889836k total, 3341868k used, 547968k free, 286044k buffers
Swap: 6127608k total,&nb
[JWFD开源工作流]当前流程引擎设计的一个急需解决的问题
comsci
工作流
当我们的流程引擎进入IRC阶段的时候,当循环反馈模型出现之后,每次循环都会导致一大堆节点内存数据残留在系统内存中,循环的次数越多,这些残留数据将导致系统内存溢出,并使得引擎崩溃。。。。。。
而解决办法就是利用汇编语言或者其它系统编程语言,在引擎运行时,把这些残留数据清除掉。
自定义类的equals函数
dai_lm
equals
仅作笔记使用
public class VectorQueue {
private final Vector<VectorItem> queue;
private class VectorItem {
private final Object item;
private final int quantity;
public VectorI
Linux下安装R语言
datageek
R语言 linux
命令如下:sudo gedit /etc/apt/sources.list1、deb http://mirrors.ustc.edu.cn/CRAN/bin/linux/ubuntu/ precise/ 2、deb http://dk.archive.ubuntu.com/ubuntu hardy universesudo apt-key adv --keyserver ke
如何修改mysql 并发数(连接数)最大值
dcj3sjt126com
mysql
MySQL的连接数最大值跟MySQL没关系,主要看系统和业务逻辑了
方法一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MYSQL即可
方法二:MySQL的最大连接数默认是100客户端登录:mysql -uusername -ppass
单一功能原则
dcj3sjt126com
面向对象的程序设计软件设计编程原则
单一功能原则[
编辑]
SOLID 原则
单一功能原则
开闭原则
Liskov代换原则
接口隔离原则
依赖反转原则
查
论
编
在面向对象编程领域中,单一功能原则(Single responsibility principle)规定每个类都应该有
POJO、VO和JavaBean区别和联系
fanmingxing
VOPOJOjavabean
POJO和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Plain Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比POJO复杂很多,JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被
SpringSecurity3.X--LDAP:AD配置
hanqunfeng
SpringSecurity
前面介绍过基于本地数据库验证的方式,参考http://hanqunfeng.iteye.com/blog/1155226,这里说一下如何修改为使用AD进行身份验证【只对用户名和密码进行验证,权限依旧存储在本地数据库中】。
将配置文件中的如下部分删除:
<!-- 认证管理器,使用自定义的UserDetailsService,并对密码采用md5加密-->
mac mysql 修改密码
IXHONG
mysql
$ sudo /usr/local/mysql/bin/mysqld_safe –user=root & //启动MySQL(也可以通过偏好设置面板来启动)$ sudo /usr/local/mysql/bin/mysqladmin -uroot password yourpassword //设置MySQL密码(注意,这是第一次MySQL密码为空的时候的设置命令,如果是修改密码,还需在-
设计模式--抽象工厂模式
kerryg
设计模式
抽象工厂模式:
工厂模式有一个问题就是,类的创建依赖于工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则。我们采用抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。
总结:这个模式的好处就是,如果想增加一个功能,就需要做一个实现类,
评"高中女生军训期跳楼”
nannan408
首先,先抛出我的观点,各位看官少点砖头。那就是,中国的差异化教育必须做起来。
孔圣人有云:有教无类。不同类型的人,都应该有对应的教育方法。目前中国的一体化教育,不知道已经扼杀了多少创造性人才。我们出不了爱迪生,出不了爱因斯坦,很大原因,是我们的培养思路错了,我们是第一要“顺从”。如果不顺从,我们的学校,就会用各种方法,罚站,罚写作业,各种罚。军
scala如何读取和写入文件内容?
qindongliang1922
javajvmscala
直接看如下代码:
package file
import java.io.RandomAccessFile
import java.nio.charset.Charset
import scala.io.Source
import scala.reflect.io.{File, Path}
/**
* Created by qindongliang on 2015/
C语言算法之百元买百鸡
qiufeihu
c算法
中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁,母,雏各几何?
代码如下:
#include <stdio.h>
int main()
{
int cock,hen,chick; /*定义变量为基本整型*/
for(coc
Hadoop集群安全性:Hadoop中Namenode单点故障的解决方案及详细介绍AvatarNode
wyz2009107220
NameNode
正如大家所知,NameNode在Hadoop系统中存在单点故障问题,这个对于标榜高可用性的Hadoop来说一直是个软肋。本文讨论一下为了解决这个问题而存在的几个solution。
1. Secondary NameNode
原理:Secondary NN会定期的从NN中读取editlog,与自己存储的Image进行合并形成新的metadata image
优点:Hadoop较早的版本都自带,