- VGG16滤镜可视化和类激活图
LIjin_1006
人工智能神经网络深度学习cnn
这个用keras2.2.4+tensorflow1.15.0importkeraskeras.__version__fromkeras.applicationsimportVGG16fromkerasimportbackendasKimportnumpyasnpfromkerasimportmodelsimportmatplotlib.pyplotaspltimporttensorflowastf
- Numpy、Pandas库的使用
貮叁
量化投资分析pythonpython数据分析
目录Numpy1、概述2、基础操作2.1生成一个numpy的array数组:2.2自定义一个新的数据类型:np.dtype()3、并行化思想4、量化分析应用4.1索引选取和切片选择4.2数据转换与规整4.3逻辑条件进行数据筛选4.4通用序列函数4.5文件保存与读取Pandas1、简介2、Series和DataFrame的使用2.1Series2.2DataFrame3、量化分析应用3.1形成一个p
- 基于PIL实现亮度、噪声、随机黑块数据增强
小陈phd
pythonnumpy人工智能
importosimportshutilfromPILimportImage,ImageEnhanceimportnumpyasnpimportrandomfromtqdmimporttqdm#ColorJitteringfunctiondefapply_color_jitter(image,brightness=0.5,contrast=0.5,saturation=0.5):"""Applyc
- A brief review of probability theory
世界上的一道风
AbriefreviewofprobabilitytheoryFundamentalrulesproductrule:yieldchainrule:sumrule:Bayesrule:Quantiles(分位数)cdf是,逆函数是,分位数的作用是,有,表示的意思是。也就是说,是一个概率值,代入累积分布的逆函数中,返回的是对应概率面积的截断点:根据公式测试:importnumpyasnpimport
- 【Python】使用高斯一勒让德求积(Gauss-Legendre)积分公式进行数值积分
穿着帆布鞋也能走猫步
课程设计成品python
本设计实现了使用Gauss-Legendre积分公式进行数值积分的功能。它通过计算勒让德多项式的零点和权重,并结合被积函数的取值来进行积分的近似计算。通过调整积分节点数n,可以得到更准确的积分近似值。最后,将计算得到的近似值与精确值进行比较,以评估数值积分的准确性。importnumpyasnpimportmatplotlib.pyplotasplt#定义勒让德多项式deflegendre_pol
- 解决常见 Python 报错:SciPy 和 NumPy 版本冲突
M.D
常用经典代码笔记pythontensorflow
引言在使用Python的科学计算库时,经常会遇到各种依赖问题。最近,在使用SciPy和NumPy这两个流行的Python包时,我遇到了一个版本兼容性的报错。在本文中,将分享下个人些浅见。报错描述当我尝试运行一段涉及SciPy和NumPy的代码时,我遇到了以下警告信息:UserWarning:ANumPyversion>=1.16.5and={np_minversion}and<{np_maxver
- 数据科学中的Python:NumPy和Pandas入门指南【第121篇—NumPy和Pandas】
一键难忘
pythonnumpypandas开发语言
数据科学中的Python:NumPy和Pandas入门指南数据科学是当今数字时代中的一个重要领域,而Python是数据科学家们最喜爱的编程语言之一。在这篇博客中,我们将介绍Python中两个强大的库——NumPy和Pandas,它们在数据处理和分析中发挥着重要作用。NumPy简介NumPy是用于科学计算的基础包,提供了高性能的多维数组对象(numpy.ndarray)和用于处理这些数组的工具。让我
- DeePhage:预测噬菌体的生活方式
CAAS_IFR_zp
生活
GitHub-shufangwu/DeePhage:Atoolfordistinguishtemperatephage-derivedandvirulentphage-derivedsequenceinmetaviromedatausingdeeplearning安装condacreate-ndeephagecondaactivatedeephagepipinstallnumpypipinstal
- 【深度学习笔记】1 数据操作
RIKI_1
深度学习深度学习笔记人工智能
注:本文为《动手学深度学习》开源内容,仅为个人学习记录,无抄袭搬运意图数据操作在深度学习中,我们通常会频繁地对数据进行操作。作为动手学深度学习的基础,本节将介绍如何对内存中的数据进行操作。在PyTorch中,torch.Tensor是存储和变换数据的主要工具。如果你之前用过NumPy,你会发现Tensor和NumPy的多维数组非常类似。然而,Tensor提供GPU计算和自动求梯度等更多功能,这些使
- 基于opencv的手势识别
GT开发算法工程师
opencv人工智能计算机视觉
当然可以,下面是一个使用OpenCV实现简单手势识别,并在摄像头捕捉的视频中描绘出手部轮廓为线条的示例。该代码会读取摄像头流,然后检测出手部,并用线条描绘出手的轮廓。首先,你需要安装OpenCV库。如果你还没有安装,可以使用pip来安装:pipinstallopencv-python接下来,是完整的代码和解释:importcv2importnumpyasnp#初始化摄像头cap=cv2.Video
- KGCN---pytorch代码(1)---data_loader
sweet_Mary
推荐算法python推荐算法pytorch人工智能机器学习深度学习
代码:importpandasaspdimportnumpyasnpfromsklearn.preprocessingimportLabelEncoderfromsklearn.model_selectionimporttrain_test_splitimportrandomclassDataLoader:'''DataLoaderclasswhichmakesdatasetfortraining
- numpy和matplotlib小例子
Roy Teng
numpymatplotlib
最近准备学《Python数据分析与挖掘实战》这本书,刚看到第二章numpy和matplotlib这一部分,发现这个图挺有意思的,就做个笔记记录一下,日后发现有意思的继续更。importnumpyasnpimportmatplotlib.pyplotaspltx=np.linspace(0,10,1000)y=np.sin(x)+1z=np.cos(x**2)+1plt.figure(figsize
- 【深度学习笔记】6_4 循环神经网络的从零开始实现
RIKI_1
深度学习深度学习笔记rnn
注:本文为《动手学深度学习》开源内容,部分标注了个人理解,仅为个人学习记录,无抄袭搬运意图6.4循环神经网络的从零开始实现在本节中,我们将从零开始实现一个基于字符级循环神经网络的语言模型,并在周杰伦专辑歌词数据集上训练一个模型来进行歌词创作。首先,我们读取周杰伦专辑歌词数据集:importtimeimportmathimportnumpyasnpimporttorchfromtorchimport
- Python报错-TypeError: only integer scalar arrays can be converted to a scalar index
牛魔王的角没了
python开发语言
不能使用一个索引数组去索引一个列表,list和numpy的array是不一样的,转成np.array例如:obj=f[name]arr=np.array(obj)注意:维度的转换以下关于此错误的问答具体细节在最佳回答处说明了https://ask.csdn.net/questions/7974628?spm=1001.2014.3001.5505
- 不同框架表示图像时维度顺序的区别:pytorch、keras&tf、opencv、numpy、PIL
蓝海渔夫
pythonpytorchpytorchkerasopencvpillowpython人工智能numpy
在PyTorch、Keras、OpenCV、NumPy和PIL这几个框架中,它们在表示图像时的维度存储顺序有所不同。下面我将逐一解释每个框架中图像维度的存储顺序:1,PyTorch:PyTorch中图像的维度顺序通常遵循[N,C,H,W]的格式,也就是channelfirst格式,其中:C代表通道数(channels),例如RGB图像有3个通道。N代表批量大小(batchsize),即一次处理的图
- python gdal 地心坐标系转wgs84坐标系
hehehehe
fromosgeoimportosr,ogrimportnumpyasnpclassOsr_Coord_Convert(object):source=osr.SpatialReference()source.ImportFromProj4("+proj=geocent+datum=WGS84+units=m+no_defs")target=osr.SpatialReference()target.
- python size和shape
MORE_77
python开发语言
python里的基础数据类型数字,字符串,列表,元组,字典,集合。字符串str,列表list[],元组,字典{}和集合均通过len(x)函数取维度。numpy数据类型对于numpy中的数组:shape:获得维度x.shape这里shape为x的属性,不需要加括号numpy.shape(x)这里的shape()是numpy的内置函数size:获得元素个数x.sizesize为x的属性,不需要加括号n
- np.hstack(), np.concatenate()与np.stack()解析
眠眠菇
Python数据分析pythonnumpy
np.hstack(),np.concatenate()与np.stack()是numpy中实现数组拼接的三个函数。1.np.hsatck(arrays)np.hstack(arrays)是其中最简单的一个函数。它接收的参数是一个元组,包含需要组合在一起的几个数组。这些数组需要满足的要求是维数相同零轴元素个数相同例:a=np.arange(9).reshape(3,3)print('a:\n',a
- tvm交叉编译android opencl
极乐净土0822
androidtvmndk交叉编译opencl
模型编译:#encoding:utf-8importonnximportnumpyasnpimporttvmimporttvm.relayasrelayimportosfromtvm.contribimportndkonnx_model=onnx.load('mobilenet_v3_small.onnx')x=np.ones([1,3,224,224])input_name='input1'sh
- 完美解决AttributeError: module ‘numpy‘ has no attribute ‘typeDict‘
小桥流水---人工智能
Python程序代码Python常见bugnumpypython
文章目录前言一、完美解决办法安装低版本1.21或者1.19.3都可以总结前言这个问题从表面看就是和numpy库相关,所以是小问题,经过来回调试安装numpy,发现是因为目前的版本太高,因此我们直接安装低版本numpy。也不用专门卸载目前的版本,安装旧版本的时候,会自动覆盖以前的版本。一、完美解决办法安装低版本1.21或者1.19.3都可以pipinstallnumpy==1.21-ihttps:/
- 关于MediaEval数据集的Dataset构建(Text部分-使用PLM BERT)
Coisíní℘
多模态虚假新闻检测bert人工智能深度学习
importrandomimportnumpyasnpimportpandasaspdimporttorchfromtransformersimportBertModel,BertTokenizerfromtqdm.autoimporttqdmfromtorch.utils.dataimportDatasetimportre"""参考Game-On论文""""""util.py"""defset_
- 如何将npy数据加载到DataLoader中(应对已将特征保存为npy格式的情况)- 接续PLM后的数据加载
Coisíní℘
多模态虚假新闻检测笔记深度学习
importnumpyasnpfromtorch.utils.dataimportDataset,DataLoaderclassNumpDatasets(Dataset):def__init__(self,file_path):self.data=np.load(file_path)def__getitem__(self,item):returnself.data[index]def__len__
- 神经网络算法:神经网络反向传播法代码
独木人生
人工智能神经网络算法python
下面是一个使用Python实现的神经网络反向传播算法的代码示例:importnumpyasnpclassNeuralNetwork:def__init__(self,num_inputs,num_hidden,num_outputs):self.num_inputs=num_inputsself.num_hidden=num_hiddenself.num_outputs=num_outputsse
- Numpy快速入门(1)
胡乱儿起个名
python基础numpy
文章目录一、Numpy是什么?二、基础知识1.数组创建2.数组的索引、切片和迭代3.形状操纵一、Numpy是什么? NumPy是一个开源的Python库,提供了多维数组对象(ndarray)和用于处理这些数组的函数。它是科学计算和数据分析的基础库之一,被广泛应用于各种领域,包括数值计算、数据处理、机器学习、图像处理等。二、基础知识 NumPy的主要对象是同构多维数组。它是一个元素表(通常是数字
- Matplotlib
matplotlib
Matplotlib1.什么是MatplotlibMatplotlib是一个强大的Python绘图库,主要用于数据可视化。2.Matplotlib功能图表类型丰富:支持线图、散点图、条形图、直方图、饼图、柱状图、误差线图、箱线图等多种图表类型。高度自定义:用户可以自定义图表的样式,包括颜色、线型、标记、标题、坐标轴标签等。良好的兼容性:与NumPy、Pandas等Python科学计算库兼容,方便处
- PythonOpenCV随机粘贴图像
小厂程序猿
opencv计算机视觉人工智能
importcv2importnumpyasnpimportrandom#读取两个图像image1=cv2.imread('image1.jpg')image2=cv2.imread('image2.jpg')#将image1转换为灰度图像gray_image1=cv2.cvtColor(image1,cv2.COLOR_BGR2GRAY)#创建掩码,黑色部分为0,非黑色部分为255_,mask=
- 【主流开发语言和开发环境介绍】
程序员不想YY啊
开发语言
主流开发语言和开发环境介绍1.介绍2.开发语言3.开发环境1.介绍下面是一些广泛使用的主流开发语言及其相关的开发环境。2.开发语言Python用途:通用编程、科学计算、数据分析、机器学习、Web开发等。流行库:NumPy,Pandas,TensorFlow,PyTorch,Flask,Django。开发环境:PyCharm,VisualStudioCode,JupyterNotebooks。Jav
- opencv-python 图像 二
夏树的宝马
http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_gui/py_drawing_functions/py_drawing_functions.html直线cv2.line(img,(起始点),(终点),(颜色),px大小)颜色为bgr>>>importcv2>>>importnumpyasnp>>>img=
- 蛙跳算法例子
依然风yrlf
算法python
蛙跳算法(JumpingFrogAlgorithm,简称JFA)是一种仿生优化算法,模拟了青蛙在搜索食物时的跳跃行为。该算法通过模拟青蛙的跳跃过程来寻找最优解,适用于连续优化、离散优化和多目标优化等问题。下面是一个详细的蛙跳算法示例,用于解决一维连续优化问题:importnumpyasnp#定义目标函数defobjective_function(x):return(x-2)**2-1#定义蛙跳算法
- Big Three
大傻羊
c++
前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):classString{public:St
- C/C++Win32编程基础详解视频下载
择善Zach
编程C++Win32
课题视频:C/C++Win32编程基础详解
视频知识:win32窗口的创建
windows事件机制
主讲:择善Uncle老师
学习交流群:386620625
验证码:625
--
- Guava Cache使用笔记
bylijinnan
javaguavacache
1.Guava Cache的get/getIfPresent方法当参数为null时会抛空指针异常
我刚开始使用时还以为Guava Cache跟HashMap一样,get(null)返回null。
实际上Guava整体设计思想就是拒绝null的,很多地方都会执行com.google.common.base.Preconditions.checkNotNull的检查。
2.Guava
- 解决ora-01652无法通过128(在temp表空间中)
0624chenhong
oracle
解决ora-01652无法通过128(在temp表空间中)扩展temp段的过程
一个sql语句后,大约花了10分钟,好不容易有一个结果,但是报了一个ora-01652错误,查阅了oracle的错误代码说明:意思是指temp表空间无法自动扩展temp段。这种问题一般有两种原因:一是临时表空间空间太小,二是不能自动扩展。
分析过程:
既然是temp表空间有问题,那当
- Struct在jsp标签
不懂事的小屁孩
struct
非UI标签介绍:
控制类标签:
1:程序流程控制标签 if elseif else
<s:if test="isUsed">
<span class="label label-success">True</span>
</
- 按对象属性排序
换个号韩国红果果
JavaScript对象排序
利用JavaScript进行对象排序,根据用户的年龄排序展示
<script>
var bob={
name;bob,
age:30
}
var peter={
name;peter,
age:30
}
var amy={
name;amy,
age:24
}
var mike={
name;mike,
age:29
}
var john={
- 大数据分析让个性化的客户体验不再遥远
蓝儿唯美
数据分析
顾客通过多种渠道制造大量数据,企业则热衷于利用这些信息来实现更为个性化的体验。
分析公司Gartner表示,高级分析会成为客户服务的关键,但是大数据分析的采用目前仅局限于不到一成的企业。 挑战在于企业还在努力适应结构化数据,疲于根据自身的客户关系管理(CRM)系统部署有效的分析框架,以及集成不同的内外部信息源。
然而,面对顾客通过数字技术参与而产生的快速变化的信息,企业需要及时作出反应。要想实
- java笔记4
a-john
java
操作符
1,使用java操作符
操作符接受一个或多个参数,并生成一个新值。参数的形式与普通的方法调用不用,但是效果是相同的。加号和一元的正号(+)、减号和一元的负号(-)、乘号(*)、除号(/)以及赋值号(=)的用法与其他编程语言类似。
操作符作用于操作数,生成一个新值。另外,有些操作符可能会改变操作数自身的
- 从裸机编程到嵌入式Linux编程思想的转变------分而治之:驱动和应用程序
aijuans
嵌入式学习
笔者学习嵌入式Linux也有一段时间了,很奇怪的是很多书讲驱动编程方面的知识,也有很多书将ARM9方面的知识,但是从以前51形式的(对寄存器直接操作,初始化芯片的功能模块)编程方法,和思维模式,变换为基于Linux操作系统编程,讲这个思想转变的书几乎没有,让初学者走了很多弯路,撞了很多难墙。
笔者因此写上自己的学习心得,希望能给和我一样转变
- 在springmvc中解决FastJson循环引用的问题
asialee
循环引用fastjson
我们先来看一个例子:
package com.elong.bms;
import java.io.OutputStream;
import java.util.HashMap;
import java.util.Map;
import co
- ArrayAdapter和SimpleAdapter技术总结
百合不是茶
androidSimpleAdapterArrayAdapter高级组件基础
ArrayAdapter比较简单,但它只能用于显示文字。而SimpleAdapter则有很强的扩展性,可以自定义出各种效果
ArrayAdapter;的数据可以是数组或者是队列
// 获得下拉框对象
AutoCompleteTextView textview = (AutoCompleteTextView) this
- 九封信
bijian1013
人生励志
有时候,莫名的心情不好,不想和任何人说话,只想一个人静静的发呆。有时候,想一个人躲起来脆弱,不愿别人看到自己的伤口。有时候,走过熟悉的街角,看到熟悉的背影,突然想起一个人的脸。有时候,发现自己一夜之间就长大了。 2014,写给人
- Linux下安装MySQL Web 管理工具phpMyAdmin
sunjing
PHPInstallphpMyAdmin
PHP http://php.net/
phpMyAdmin http://www.phpmyadmin.net
Error compiling PHP on CentOS x64
一、安装Apache
请参阅http://billben.iteye.com/admin/blogs/1985244
二、安装依赖包
sudo yum install gd
- 分布式系统理论
bit1129
分布式
FLP
One famous theory in distributed computing, known as FLP after the authors Fischer, Lynch, and Patterson, proved that in a distributed system with asynchronous communication and process crashes,
- ssh2整合(spring+struts2+hibernate)-附源码
白糖_
eclipsespringHibernatemysql项目管理
最近抽空又整理了一套ssh2框架,主要使用的技术如下:
spring做容器,管理了三层(dao,service,actioin)的对象
struts2实现与页面交互(MVC),自己做了一个异常拦截器,能拦截Action层抛出的异常
hibernate与数据库交互
BoneCp数据库连接池,据说比其它数据库连接池快20倍,仅仅是据说
MySql数据库
项目用eclipse
- treetable bug记录
braveCS
table
// 插入子节点删除再插入时不能正常显示。修改:
//不知改后有没有错,先做个备忘
Tree.prototype.removeNode = function(node) {
// Recursively remove all descendants of +node+
this.unloadBranch(node);
// Remove
- 编程之美-电话号码对应英语单词
bylijinnan
java算法编程之美
import java.util.Arrays;
public class NumberToWord {
/**
* 编程之美 电话号码对应英语单词
* 题目:
* 手机上的拨号盘,每个数字都对应一些字母,比如2对应ABC,3对应DEF.........,8对应TUV,9对应WXYZ,
* 要求对一段数字,输出其代表的所有可能的字母组合
- jquery ajax读书笔记
chengxuyuancsdn
jQuery ajax
1、jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()
- JWFD工作流拓扑结构解析伪码描述算法
comsci
数据结构算法工作活动J#
对工作流拓扑结构解析感兴趣的朋友可以下载附件,或者下载JWFD的全部代码进行分析
/* 流程图拓扑结构解析伪码描述算法
public java.util.ArrayList DFS(String graphid, String stepid, int j)
- oracle I/O 从属进程
daizj
oracle
I/O 从属进程
I/O从属进程用于为不支持异步I/O的系统或设备模拟异步I/O.例如,磁带设备(相当慢)就不支持异步I/O.通过使用I/O 从属进程,可以让磁带机模仿通常只为磁盘驱动器提供的功能。就好像支持真正的异步I/O 一样,写设备的进程(调用者)会收集大量数据,并交由写入器写出。数据成功地写出时,写入器(此时写入器是I/O 从属进程,而不是操作系统)会通知原来的调用者,调用者则会
- 高级排序:希尔排序
dieslrae
希尔排序
public void shellSort(int[] array){
int limit = 1;
int temp;
int index;
while(limit <= array.length/3){
limit = limit * 3 + 1;
- 初二下学期难记忆单词
dcj3sjt126com
englishword
kitchen 厨房
cupboard 厨柜
salt 盐
sugar 糖
oil 油
fork 叉;餐叉
spoon 匙;调羹
chopsticks 筷子
cabbage 卷心菜;洋白菜
soup 汤
Italian 意大利的
Indian 印度的
workplace 工作场所
even 甚至;更
Italy 意大利
laugh 笑
m
- Go语言使用MySQL数据库进行增删改查
dcj3sjt126com
mysql
目前Internet上流行的网站构架方式是LAMP,其中的M即MySQL, 作为数据库,MySQL以免费、开源、使用方便为优势成为了很多Web开发的后端数据库存储引擎。MySQL驱动Go中支持MySQL的驱动目前比较多,有如下几种,有些是支持database/sql标准,而有些是采用了自己的实现接口,常用的有如下几种:
http://code.google.c...o-mysql-dri
- git命令
shuizhaosi888
git
---------------设置全局用户名:
git config --global user.name "HanShuliang" //设置用户名
git config --global user.email "
[email protected]" //设置邮箱
---------------查看环境配置
git config --li
- qemu-kvm 网络 nat模式 (四)
haoningabc
kvmqemu
qemu-ifup-NAT
#!/bin/bash
BRIDGE=virbr0
NETWORK=192.168.122.0
GATEWAY=192.168.122.1
NETMASK=255.255.255.0
DHCPRANGE=192.168.122.2,192.168.122.254
TFTPROOT=
BOOTP=
function check_bridge()
- 不要让未来的你,讨厌现在的自己
jingjing0907
生活 奋斗 工作 梦想
故事one
23岁,他大学毕业,放弃了父母安排的稳定工作,独闯京城,在家小公司混个小职位,工作还算顺手,月薪三千,混了混,混走了一年的光阴。 24岁,有了女朋友,从二环12人的集体宿舍搬到香山民居,一间平房,二人世界,爱爱爱。偶然约三朋四友,打扑克搓麻将,日子快乐似神仙; 25岁,出了几次差,调了两次岗,薪水涨了不过百,生猛狂飙的物价让现实血淋淋,无力为心爱银儿购件大牌
- 枚举类型详解
一路欢笑一路走
enum枚举详解enumsetenumMap
枚举类型详解
一.Enum详解
1.1枚举类型的介绍
JDK1.5加入了一个全新的类型的”类”—枚举类型,为此JDK1.5引入了一个新的关键字enum,我们可以这样定义一个枚举类型。
Demo:一个最简单的枚举类
public enum ColorType {
RED
- 第11章 动画效果(上)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- Eclipse中jsp、js文件编辑时,卡死现象解决汇总
ljf_home
eclipsejsp卡死js卡死
使用Eclipse编辑jsp、js文件时,经常出现卡死现象,在网上百度了N次,经过N次优化调整后,卡死现象逐步好转,具体那个方法起到作用,不太好讲。将所有用过的方法罗列如下:
1、取消验证
windows–>perferences–>validation
把 除了manual 下面的全部点掉,build下只留 classpath dependency Valida
- MySQL编程中的6个重要的实用技巧
tomcat_oracle
mysql
每一行命令都是用分号(;)作为结束
对于MySQL,第一件你必须牢记的是它的每一行命令都是用分号(;)作为结束的,但当一行MySQL被插入在PHP代码中时,最好把后面的分号省略掉,例如:
mysql_query("INSERT INTO tablename(first_name,last_name)VALUES('$first_name',$last_name')");
- zoj 3820 Building Fire Stations(二分+bfs)
阿尔萨斯
Build
题目链接:zoj 3820 Building Fire Stations
题目大意:给定一棵树,选取两个建立加油站,问说所有点距离加油站距离的最大值的最小值是多少,并且任意输出一种建立加油站的方式。
解题思路:二分距离判断,判断函数的复杂度是o(n),这样的复杂度应该是o(nlogn),即使常数系数偏大,但是居然跑了4.5s,也是醉了。 判断函数里面做了3次bfs,但是每次bfs节点最多