- 08_Excel 导入 - 用户信息批量导入
耀耀_很无聊
【后端开发】Java碎碎念exceljava开发语言
08_Excel导入-用户信息批量导入1.VO类java复制编辑@Data@AllArgsConstructor@NoArgsConstructorpublicclassUserInfoBatch4ExcelReq{@ExcelProperty(value="用户姓名")@Schema(description="用户姓名")privateStringuserName;@ExcelProperty(
- SpringBoot读取properties中文乱码解决方案
大饼酥
springbootspringjava
目录一、问题描述二、解决方案2.1、网络上的解决办法2.1.1、修改IDEA编码2.1.2、改为yml配置2.1.3、读取时设置编码2.2、重写资源加载类(个人推荐)一、问题描述由于业务需求需要在application.properties中配置一个带有中文字符串的参数,注入到业务类中,但是发现注入的中文是乱码的。大概情况如下所示:packagecom.cnstar.test;importorg.
- android led 框架,详解Android应用层制作LED指示灯
详解Android应用层制作LED指示灯在Java应用层修改LED指示灯的颜色,这个花了我半天时间,才实现该功能!publicclassLEDActivityextendsActivityimplementsView.OnClickListener{privatestaticfinalStringTAG="LED";ButtonmLedTest;intmLedStatus=0;privatefin
- 使用 `pytest` 框架时,可以通过极限封装将 YAML 文件的读取、解析
小赖同学啊
pythonpytest服务器运维
在使用pytest框架时,可以通过极限封装将YAML文件的读取、解析和测试用例的通用逻辑封装成共享的方法或fixture,从而减少重复代码。以下是详细的实现步骤和示例。1.封装YAML文件读取和解析将YAML文件的读取和解析逻辑封装到一个工具函数中,供所有测试用例调用。示例YAML文件#test_data.yamltest_cases:-name:TestCase1input:5e
- Vscode中Python无法将pip/pytest”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
在Python需要pip下载插件时报错,是因为没有把Python安装路径下的Scripts添加到系统的path路径中。如果到了对应路径没发现pip文件,查看是否有pip相关文件,一般会存在pip3命令行使用pip3install后会进行提示更新,按照提示进行更新即可bug2:通过piplist发现其实已经安装pytest但使用pytest--version提示相同错误可通过pipuninstall
- C#测试实战:从集成到端到端——代码级深度解析与工程化实践
墨夶
C#学习资料c#开发语言
——零侵入框架设计、自动化工具链与真实场景模拟为什么需要“测试金字塔”?在微服务架构下,C#应用的复杂性呈指数级增长。集成测试(IntegrationTesting)和端到端测试(E2ETesting)是保障系统稳定性的两大核心防线:集成测试:验证模块间协作,定位接口与依赖问题端到端测试:模拟真实用户场景,确保全链路流程无误本文通过代码实战,从依赖注入模拟到浏览器自动化,构建一个企业级测试框架,并
- Python多进程编程
Python多任务提升程序性能之一---------多进程#Python的多进程编程的方法是multiprocessing,他是可以在当前的主进程下面去创建n个子进程所以所以他,执行相当于n+1个进程#首先导入multimprocessing包importmultiprocessing#防止执行熟读太快看出出多进程的区别importtime#编写尊卑使用多进程的方法deftest01():fori
- Redis哨兵模式(Sentinel、1主2从3哨兵6台服务器配置实战、客户端调用、日志解析、主观下线、客观下线、仲裁、脑裂问题、哨兵长与从节点投票选举过程与原理)
小松聊PHP进阶
Redisredis服务器运维nosql后端架构数据库
哨兵模式官方文档:https://redis.io/docs/latest/operate/oss_and_stack/management/sentinel关联博客:Redis主从复制(下文能用到)极简概括:自动监控Redis主节点是否故障的一种方案,若主节点故障,则Redis会根据投票数自动将从库切换为主库(这个过程,叫仲裁)。解决问题:在主从复制的架构模式下,Redis主节点挂掉后,从节点无
- 1163 Dijkstra Sequence (30)
圣保罗的大教堂
PAT刷题图pat考试
Dijkstra'salgorithmisoneoftheveryfamousgreedyalgorithms.Itisusedforsolvingthesinglesourceshortestpathproblemwhichgivestheshortestpathsfromoneparticularsourcevertextoalltheotherverticesofthegivengraph.
- Nginx 运维实战与 HTML 静态网页开发全攻略
一、技术背景:静态站点的黄金时代1.静态网页的复兴浪潮性能优势:对比动态站点,静态资源响应速度提升60%+,首屏加载时间平均缩短1.2秒(基于WebPageTest实测数据)技术演进:Jamstack架构普及(2024年市场占有率达37%),Hugo、Nuxt.js等静态站点生成器(SSG)推动企业级应用典型场景:企业官网(占比78%)、产品着陆页(转化率提升23%)、博客系统(WordPress
- Vue2+Vue3 130~180集学习笔记
Jyywww121
学习笔记vue.js
Vue2+Vue3130~180集(Vue3)学习笔记一、create-vue搭建vue3项目create-vue是vue官方新的脚手架工具,底层切换到了vite步骤:查看环境条件node-v版本需要在16.0及以上创建一个vue应用npminitvue@latest这一指令会安装并执行create-vue二、项目目录和关键文件index.html提供挂载点src/assets图片、样式文件的目录
- 设计模式-单例模式
GodKeyNet
设计模式单例模式
1.用到的类一个用于获取单例的类。2.实现代码懒汉式/***懒汉式单例模式*/publicclassSingleLazy{privatestaticSingleLazysingleLazy=newSingleLazy();publicstaticSingleLazygetInstance(){returnsingleLazy;}}饿汉式/***饿汉式单例**/publicclassHungrySi
- springboot项目中构建树结构数据返回
两点王爷
java数据结构数据处理springbootjava树结构
需要构建一个树结构返回(ID,PID),具体示例如下1、创建实体数据表--测试省份数据表DROPTABLEIFEXISTStest_province;CREATETABLEIFNOTEXISTStest_province(idBIGINT(32)NOTNULLAUTO_INCREMENTPRIMARYKEYCOMMENT'表ID',pidBIGINT(32)COMMENT'父级ID',nameVA
- ubuntu编译 aosp for x86, windows avd启动 aosp-qemu镜像
鲁班king666
ubuntuwindowslinux
编译aosp给出编译脚本10:38:36test@server:~/workspace/shell/build$catbuild_emulater.sh#!/bin/bashcd/home/suhui/workspace/aosp/x86_emulater/sourcebuild/envsetup.shlunchsdk_phone_x86_64-userdebugmake-j12810:38:39
- reactor-test
lang20150928
reactorjava
在Reactor中,reactor-test是一个专门用于测试的工具库,它提供了多种功能来帮助开发者验证响应式流的正确性和可靠性。根据我搜索到的资料,reactor-test的三个主要用途可以总结如下:1.使用StepVerifier按步骤验证序列StepVerifier是reactor-test的核心接口之一,它允许你定义和验证响应式序列的每一步行为。你可以通过expectNext、expect
- 通过去抖动机制或延迟确认,解决交流接触器时间差导致的状态波动问题
zhxup606
C#实战教程前端数据库c#
从你的描述和代码来看,需求如下:Read方法持续读取硬件状态:Read方法通过循环不断读取AUXRealTimeState1.TestPowerStatus,并在状态为true时设置GlobalCache.TestPowerReadStatus=true。每次循环有100ms的延迟(Thread.Sleep(100)),表示这是一个轮询机制,用于监控硬件状态。PSRead依赖状态:只有当Globa
- python里面的全局变量和局部变量的区别(很好的一篇文章,找不到出处,原作者看到请联系,我会署上名字)
scuter_yu
全局变量与局部变量的区别python
python中,对于变量作用域的规定有些不一样。在诸如C/C++、java等编程语言中,默认在函数的内部是可以直接访问在函数外定义的全局变量的,但是这一点在python中就会有问题,下面是一个例子。[plain]viewplaincopy在CODE上查看代码片派生到我的代码片test.py:#!/usr/bin/pythonCOUNT=1deffunc():COUNT=COUNT+1func()P
- httpclient4.5 访问 使用自签名证书的https网站 报错问题的解决
cszsc
httpclienthttps自签名证书
使用下面的getHttpClient()方法代替HttpClients.createDefault()即可。(可以不是static)privatestaticCloseableHttpClientgetHttpClient(){try{SSLContextsslContext=SSLContexts.custom().loadTrustMaterial(TrustSelfSignedStrateg
- 手动续期证书后自动上传到阿里云
要将acme.sh续期后的脚本自动传到阿里云上,可以按照以下步骤进行:安装阿里云CLI:在服务器上安装阿里云命令行工具(CLI),以便能够通过命令行与阿里云进行交互。可以使用以下命令进行安装:wgethttps://aliyuncli.alicdn.com/aliyun-cli-linux-latest-amd64.tgz&&tarxzvfaliyun-cli-linux-latest-amd64
- AtCoder Beginner Contest 407(ABCDEF)
Cando-01
#atcoder周赛c++数据结构算法
A-Approximation翻译:给你一个正整数A和一个正奇数B。请输出与实数的差最小的整数。可以证明,在约束条件下,这样的整数是唯一的。思路:令。比较来判断答案。实现:#includeusingnamespacestd;usingll=longlong;voidsolve(){inta,b;cin>>a>>b;intc=a/b;if(1.0*a/b-cusingnamespacestd;usi
- AtCoder Beginner Contest 398(ABCDEF)
Cando-01
#atcoder周赛算法数据结构c++
A-DoorsintheCenter翻译:找到一个满足下面情况长为N的字符串:每个字符是-或=。是一个回文。包含一个或两个=。如果包含两个相邻的=。如此字符串为独一无二的。思路:从两端使用=开始构造回文。在特判下中间部分,字符串s长为2,放两个=;长为1放一个=。实现:#includeusingnamespacestd;usingll=longlong;constintMX=1e5+10;void
- React setState执行流程
lucky_full
Reactreact.jsjavascript前端
第二章ReactsetState执行流程文章目录第二章ReactsetState执行流程一、setState执行流程setState执行流程介绍一、setState执行流程文章介绍为函数式组件,类组件有所不同。setState执行流程介绍代码如下(示例):importReact,{useState}from'react'constTest=()=>{const[count,setCount]=us
- 板凳-------Mysql cookbook学习 (十--15)
fengye207161
mysql学习android
10.31编写时间处理工具sql--创建测试数据--插入所有原始数据,使用STR_TO_DATE函数处理不同格式的日期INSERTINTOdate_test(event_name,event_date)VALUES('Fred',STR_TO_DATE('04-13-70','%m-%d-%y')),('Mort',STR_TO_DATE('09-3-69','%m-%d-%y')),('Alic
- 安装milvus数据库
weixin_44080967
milvus数据库
#创建保存目录mkdir-pdocker_images_backupcddocker_images_backup#1.保存Milvus镜像dockersave-omilvus_latest.tarmilvusdb/milvus:latest#2.保存MinIO镜像dockersave-ominio_latest.tarminio/minio:latest#3.保存ETCD镜像dockersave-
- 中国计算机学会(CCF)推荐学术会议-C(计算机体系结构/并行与分布计算/存储系统):ATS 2025
爱思德学术
可用性测试压力测试功能测试
ATS2025The34thAsianTestSymposium(ATS)andthe9thInternationalTestConferenceinAsia(ITC-Asia)willbeheldinconjunctionwithSEMICONJapan2025inTokyo,Japan.Thisjointeventprovidesavaluableplatformforacademicrese
- DMDSC集群部署
反手优化
达梦数据库数据库
DMDSC集群部署(个人测试版本)一、安装部署规划1.1服务器信息IP信息:主机名称服务IP心跳IP数据库名称实例名dm1192.168.20.64192.168.111.64DAMENGdmdb1dm2192.168.20.65192.168.111.65DAMENGdmdb2用户规划:安装用户名所属组登录口令dmdbadinstallTest@dameng666目录规划:安装介质挂载目录/dm
- 第三届“传智杯”全国大学生IT技能大赛(初赛B组)
START_GAME
实战笔记
第三届“传智杯”全国大学生IT技能大赛(初赛B组)链接:https://www.luogu.com.cn/contest/38442#description也直接洛谷进入———————————————————————————————笔记:前三题不难。卡在第四题(提交了18次才过-_-),测试点二就是过不了。变量创建的位置改一下就过了,非常不明白为什么。虽然最后5题都过了,估计还是凉凉300+。T1
- PostMan接口测试流程
程序员小雷
postmanlua测试工具测试用例selenium功能测试单元测试
1、下载和安装Postman:前往Postman官网(https://www.postman.com),下载适用于你的操作系统的Postman客户端。执行下载后的安装程序,并按照安装向导的指引完成安装过程。2、创建一个新的集合:打开Postman,点击左上角的"New"按钮,选择"Collection"(集合)。输入集合的名称,例如"APITests",并选择存储位置。点击"Save"(保存)。3
- python连接db2的官方库ibm_db的api
数据-脚本-资源-管道
ibm-dbpython数据库python
IBM_DBAPI详细文档ibm_db.active描述检查指定的数据库连接是否处于活动状态传入参数connection:有效的数据库连接资源返回值True:资源处于活动状态False:资源未处于活动状态例子importibm_dbconn=ibm_db.connect("DATABASE=testdb;HOSTNAME=localhost;PORT=50000;PROTOCOL=TCPIP;UI
- python cls的使用
最后冰吻free
pythoncls
importthreadingclassTest:#new方法用于创建类的实例def__new__(cls,*args,**kwargs):print("__new__:",cls.__class__.__name__)returnobject.__new__(cls)#返回实例给initself参数#init用于初始化类的实例,实例由new方法传递过来的,即这里selfdef__init__(s
- 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节点最多