- java 同步redis到mysql_Yii2 redis同步数据到mysql
兰艳知己
java同步redis到mysql
将redis数据写入mysql中:本次案例讲解将如何将商城中商品浏览次数通过缓存记录并写入mysql中具体的redis安装过程暂且就省略了.....一、安装redis插件|配置rediscomposerrequireyiisoft/yii2-redis找到common的config文件,在components下加入redis配置参数'redis'=>['class'=>'yii\redis\Con
- 关于YII2使用mssql/SqlServer的问题
aisicongg
yiiSqlServer
场景:配置了多个db连接,包含mysql和mssql等多个。本人在配置使用mssql的的过程中发现表名和字段名自动转义成`分隔符。例如SELECT`id`,`username`FROM`user`该语句在mssql是无法执行的,因为mssql不支持`分隔符,这个时候你需要在yii2调用的时候指定对应的配置db,比如我的申请了SqlServer是db2,那么我的写法如下:$query->create
- 用于 Yii 2 的 AuthClient 扩展--安装
topofgods
Yii
https://github.com/yiisoft/yii2-authclient/blob/master/docs/guide-zh-CN/installation.md安装安装扩展要安装该扩展,请使用Composer。运行composerrequire--prefer-distyiisoft/yii2-authclient"~2.1.0"或在你的composer.json文件的“requir
- YII2配置SQLSERVER
大智001
php5.3以后,没有对sqlserver的支持的动态链接文件了,要php支持sqlserver。记住下面两个链接:https://github.com/Microsoft/msphpsql1.根据要求下载SRV32.EXE文件。(Php5.5以上的可以安装SQL)https://www.microsoft.com/en-us/download/details.aspx?id=20098将其安装到
- Yii2 连接SqlServer(windows)
aaa阿阿qiu~~
php环境windowssqlserverphp
最开始的问题:连接mysql没问题,连接sqlserver一直不行,但是在客户端可以连接,说明肯定程序或者是扩展哪里没弄对,就一直报couldnotfinddriver这个错误1、php扩展,可以使用phpinfo()来查看是否成功加载了pdo_sqlsrv模块,没问题扩展下载链接地址:https://docs.microsoft.com/zh-cn/sql/connect/php/release
- Yii 2 JQuery UI 扩展使用教程
解雁淞
Yii2JQueryUI扩展使用教程yii2-juiYii2JQueryUIextension.项目地址:https://gitcode.com/gh_mirrors/yi/yii2-jui项目介绍Yii2JQueryUI扩展是一个为Yii框架2.0提供的扩展,它封装了JQueryUI小部件作为Yii小部件,使得在Yii应用程序中使用JQueryUI小部件变得更加方便。这个扩展由yiisoft开发
- 深入探讨PHP框架:架构、优势及应用案例
电竞小潘安
本文还有配套的精品资源,点击获取简介:PHP框架为开发PHP应用提供了一套预定义的结构和组件,旨在简化开发流程、提高效率并促进代码复用。介绍了流行的PHP框架如Laravel、Symfony、CodeIgniter、Yii、CakePHP和Phalcon,它们各自的特色和优势。同时,阐述了选择合适框架的考量因素,以及框架对代码标准化、安全性及社区支持的影响。文章总结强调,学习和掌握不同PHP框架对
- Yii Db Model相关方法
PHP(Mr. Hamster)
Yii2ecshop
Model方法where字符串格式数组格式:['in','user_id',$ids]['name'=>value]andWhereorWhereone返回一条数据all返回多条二维数组columndelete删除数据跟在one后面可用deleteAll删除全部delete([name=>value,...])delete("stringsql")update更新数据->createCommand
- YiI2+ecshop phpexcel生成下载excel订单
PHP(Mr. Hamster)
#Yii2phpexcel
前端代码注:需引入jquery下载订单document.getElementById('downloadBtn').addEventListener('click',function(event){event.preventDefault();//自定义逻辑例如:发送AJAX请求或显示下载提示constkey_words=$('input[name="key_words"]').val();con
- Springboot接收 Form 表单数据的示例详解
weixin_44917365
springbootjavaspring
一、接收Form表单数据文章地址https://www.yii666.com/blog/298384.html1,基本的接收方法(1)下面样例Controller接收form-data格式的POST数据:importorg.springframework.web.bind.annotation.PostMapping;importorg.springframework.web.bind.annot
- Yii2项目自动向GitLab上报Bug
少湖说
Gitlab-CI实战gitlabbug前端yii
Yii2项目自动上报Bug原理yii2在程序报错时,会执行指定action,通过重写ErrorAction,实现Bug自动提交至GitLab的issue步骤配置SiteController中的actions方法publicfunctionactions(){return['error'=>['class'=>'app\helpers\web\ErrorAction',],];}重写ErrorAct
- spring ServerWeb 相关说明
征客
springjava
springServerWeb相关说明参考:https://www.yii666.com/blog/334416.html一、ServerWebExchange与过滤器的关系SpringCloudGateway同zuul类似,有“pre”和“post”两种方式的filter。客户端的请求先经过“pre”类型的filter,然后将请求转发到具体的业务服务,收到业务服务的响应之后,再经过“post”类
- Yii2使用PHPExcel读取excel
pxy_lele
进击的礼包yiiphpexcel
个人使用过程中保存一些使用PHPExcel的经验,以便后来翻阅:与PHP的Yii框架结合,可以轻松使用。而且根本不用网上所说的修改Yii的自动加载文件等方法。具体使用方法:下载phpofficehttp://phpexcel.codeplex.com/releases/view/119187(如果用composer的话,不需要手动下载)下载后首级目录结构是Classes,Documentation
- Yii2.0手册地址
攻城狮joe
LA(N)MPYII2.0
官网打不开,可以看这里http://yii2.techbrood.com/;跟官网里面文档一样。ps:今天真郁闷,官网都打不开
- Yii2.0 用户登录详解(上)
lhorse003
yii2登陆
一、准备在开始编写代码之前,我们需要思考一下:用户登陆模块,实现的是什么功能?很明显,是登陆功能,那么,登陆需要用户名和密码,我们在数据库的一张表中就应该准备好用户名和密码的字段,再思考一下,如果要实现自动登陆的功能,那么还需要什么?Cookie,是专门用于自动登陆的,所以,我们的数据表可能需要准备一个字段,专门用于储存客户端登陆所生成的cookie,这样,就能通过验证客户端和服务端的cookie
- Foxdisk00-源代码编译
luobing4365
汇编语言探索bootloader底层编程多系统引导自己写操作系统汇编语言
(请保留->作者:罗冰)为了便于之后博文的行文方便,我把代码放在了下载区。(这篇博文最早发布在http://yiiyee.cn/blog/author/luobing/下,我把代码放在github上了https://github.com/luobing/Foxdisk3)编译器使用的是BorlandC++3.1,C编译器和汇编编译器都在其中。代码中包含三个汇编文件:Loaser.asm、iMath
- AtCoder Beginner Contest 183 —— C - Travel
yamaes
c语言开发语言
ProblemStatementThereareNNcities.ThetimeittakestotravelfromCityiitoCityjjisTi,jTi,j.AmongthosepathsthatstartatCity11,visitallothercitiesexactlyonce,andthengobacktoCity11,howmanypathstakethetotaltimeof
- PHP框架为基础的购物平台设计思路分步骤说明
星糖曙光
后端语言(nodejavascriptvue等等)学习课程设计vue.jspythonphp
以下是以PHP框架为基础的购物平台设计思路分步骤说明:一、技术选型阶段技术栈={后端框架:Laravel/Yii2(提供ORM、路由、中间件支持)前端框架:Vue.js/React(可选SPA方案)数据库:MySQL8.0+(事务型数据存储)缓存:Redis(会话/商品缓存)队列:RabbitMQ(异步处理订单)\text{技术栈}=\begin{cases}后端框架:Laravel/Yii2(提
- \yii\queue\LogBehavior::class到底是什么?一共包含哪些部分?
快点好好学习吧
Yii2.0android
1.\yii\queue\LogBehavior::class到底是什么?想象一下,你在一家咖啡店:你需要记录每一笔订单的状态(如“已下单”、“正在制作”、“已完成”),以便后续追踪和排查问题。在Yii2的队列系统中,\yii\queue\LogBehavior就像是一个“日志记录员”,用于在队列任务执行的不同阶段记录日志信息。(1)核心概念定义:\yii\queue\LogBehavior是Yi
- Yii::$app->queue->push到底如何使用?
快点好好学习吧
Yii2.0android
1.Yii::$app->queue->push是什么?想象一下,你在一家咖啡店:你需要将每一笔订单(任务)放入“待处理队列”中,由后厨按照顺序处理。在Yii2中,Yii::$app->queue->push就像是这个“放入队列”的操作,用于将任务推送到队列系统中,等待异步处理。(1)核心概念定义:Yii::$app->queue->push是Yii2队列扩展中的一个方法,用于将任务推送到队列中。
- 吴大仙带你三分钟学会swoole框架
大仙带你飞
phpswoole
前言最近在学习swoole这个东西,就写点心得吧。基于swoole的开源框架很多,优缺点自己百度,凡是有用到websocket和消费队列选择基于swoole的框架是不错的选择。好吧话不多说,吴大仙就介绍一下swoole的一个简单入门吧正文swoole有两个部分。一个是PHP扩展,用C开发的,这是核心。另一个是框架,像yii、TP、Laravel一样,是PHP代码写的。swoole扩展本身提供了we
- DeepSeek 模型:究竟该如何抉择?
云计算课代表
日常运维问题合集腾讯云ai服务器云计算
一、DeepSeek安装部署之前已经写过教程介绍如何部署DeepSeek,具体可参考以下内容:喂饭式教程-腾讯云轻量服务器部署DeepSeek:https://www.yiisu.vip/deepseek_lighthouse.html喂饭式教程-腾讯云HAI服务部署DeepSeek:https://www.yiisu.vip/deepseek_hai.html喂饭式教程-腾讯云HAI服务原生安装
- PHP反序列化漏洞POP链详解 - Yii框架案例分析 (②)
恩师小迪
android前端javascript
POP链的第二条路:从Faker\Generator开始现在,让我们一步步解析这条攻击链。我们将从Faker\Generator类的__call魔术方法开始,追踪到最终执行危险函数的地方。第一步:触发__call魔术方法在PHP中,当你尝试调用一个对象中不存在的方法时,如果该对象定义了__call魔术方法,PHP会自动调用它。假设我们有一个Faker\Generator对象:$generator=
- 使用yii自带发邮件功能发送邮件
原克技术
yiiphp
邮件组件的配置取决于您选择的扩展名。通常,您的应用程序配置应如下所示:在配置文件中配置dirname(dirname(__DIR__)).'/vendor','timeZone'=>'Asia/Chongqing','components'=>['db'=>['class'=>'yii\db\Connection','dsn'=>'mysql:host=localhost;dbname=root'
- 【原创】Android Studio 中好用的翻译插件
赵庆明老师
Androidandroidstudioandroidide
在使用AndroidStudio的时候,且不说英文界面,在编写代码的时候遇到的文档也是英文的,如果英语基础不过关,这个软件就太好了。名称很简单:Translation,由Yii.Guxing开发,目前800多次安装。https://plugins.jetbrains.com/plugin/8579-translation在AndroidStudio中打开设置\插件,搜索Translation即可,
- php yii 微信支付宝,Yii使用easywechat实现微信支付
爱吃生菜的鱼
phpyii微信支付宝
您现在的位置是:网站首页>>微信>>微信公众号Yii使用easywechat实现微信支付发布时间:2019-04-3011:43:07作者:wangjian浏览量:1142点赞量:0一:微信公众号申请微信支付申请微信公众号的微信支付申请这里就不进行叙述了二:yii配置支付配置这里我使用的是max-wen/yii2-easy-wechat,所以这里我参考的是3.X版本的文档2:微信支付配置'WECH
- phpyii框架倒叙_PHP的Yii框架入门使用教程
weixin_39851974
phpyii框架倒叙
安装Yii的安装由如下两步组成:从yiiframework.com下载Yii框架。将Yii压缩包解压至一个Web可访问的目录。Tip|提示:安装在Web目录不是必须的,每个Yii应用都有一个入口脚本,只有它才必须暴露给Web用户。其它PHP脚本(包括Yii)应该保护起来不被Web访问,因为它们可能会被黑客利用。需求安装完Yii以后你也许想验证一下你的服务器是否满足使用Yii的要求,只需浏览器中输入
- Yii框架中的ActiveDataProvide如何便捷地获取数据
ac-er8888
前端php开发语言
Yii框架中的ActiveDataProvider是一个强大的工具,用于便捷地获取数据。它主要用于从数据库中查询数据模型,将结果按特定格式组织,并支持分页、排序和过滤等功能。以下是ActiveDataProvider如何便捷地获取数据的详细说明:一、基本使用创建ActiveDataProvider实例:需要提供模型类和查询条件作为参数。例如,若要获取所有已发布的文章,可以这样创建ActiveDat
- Yii框架中的控制器如何处理请求
ac-er8888
前端服务器php开发语言
在Yii框架中,控制器处理请求的过程是一个核心环节,它遵循MVC(Model-View-Controller)设计模式,负责将用户发送的请求转发到对应的处理方法(Action)中,并通过这些方法来生成相应的响应信息。以下是Yii框架中控制器处理请求的详细步骤:请求解析:Yii框架首先会解析HTTP请求,提取请求的URL、请求方法(GET、POST等)以及请求参数等信息。这些信息将被用于确定应该调用
- Yii框架中的表单构建器:构建复杂表单
ac-er8888
服务器运维php开发语言
Yii框架中的表单构建器(FormBuilder)是一个强大的工具,它允许开发人员以简单、面向对象的方式构建复杂的表单,从而提升Web应用的用户体验。以下是对Yii框架中表单构建器的详细简述,特别是在构建复杂表单方面的应用:一、表单构建器的基础组件介绍:Yii表单构建器是Yii框架中的一个组件,专门用于创建Web表单。它提供了一个简单的、面向对象的编程接口,使得开发人员能够轻松地创建各种常见的表单
- 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节点最多