- 说说你对koa中洋葱模型的理解?
J轩
前端
什么是koa?Koa是一个精简的node框架,被认为是第二代Node框架,其最大的特点就是独特的中间件流程控制,是一个典型的洋葱模型,它的核心工作包括下面两个方面:1.将node原生的req和res封装成为一个context对象。2.基于async/await的中间件洋葱模型机制。Koa1和Koa2在源码上的区别有何不同?Koa1是使用generator、yield的模式。Koa2使用的是asyn
- Koa2——洋葱模型,简单实现
三千数优一
javascript1024程序员节
classapp{middleware=[];//装载中间件use(middleware){this.middleware.push(middleware);}compose(callback){//把要被触发的上一层洋葱壳作为下一层洋葱壳的next入参传入。//reducer的返回值,也就是下一层的next为()=>fn(next)。constreducer=(next,fn)=>()=>fn(
- koa2 洋葱模型
gaearon
koa2jsnodejsnode.jskoa2
示意图koa2是基于async和await实现的,使用next进行流程控制。这样就可以使用awaitnext()进行一种特殊的执行顺序,等下一个路由执行完毕之后,再执行当前路由,通常称为“洋葱模型”。何谓“洋葱模型”就像那首歌一样,“一层一层剥开我的心”,koa2中的“洋葱模型”也是这样,匹配到的路由,可以一层一层进去,进入最内层之后,再一层一层出来。例如这个demo:api.get("/",as
- Koa2 的洋葱模型是什么?它是如何实现的?
极客李华
Koakoa
Koa2的洋葱模型是什么?它是如何实现的?Koa2的洋葱模型是一种中间件执行流程的设计模式,它允许开发者在请求的处理过程中,按照特定的顺序依次执行一系列中间件函数。洋葱模型的实现基于Koa2框架的特性和原理。下面我将通过一个具体的案例来解释洋葱模型的概念和实现。假设我们有一个简单的Koa2应用,用于处理用户的HTTP请求。首先,我们需要创建一个Koa应用实例:constKoa=require('k
- koa学习
coder_vito
vue
为了弥补httpServer的不足,koa对其进行了一层封装,使之api更加的人性化。比如http中的res.end()api响应给客户端,因为是数据流,所以用end来结束好像也很合理,但是总觉得挺奇怪的,koa里则直接是res.body={},这样子的api就更加的人性化了。特点·koa2完全使⽤用Promise并配合async来实现异步·轻量量,⽆无捆绑·中间件架构·优雅的API设计·增强的错
- Koa框架入门
卷小白
npm前端node.js
Koa是一个基于Node.js的轻量级Web应用框架,它提供了一组简洁而强大的工具,帮助开发者构建高效、可扩展的Web应用程序。1.安装Koa要使用Koa框架,首先需要在项目中安装Koa的依赖。可以使用npm或者yarn来进行安装。在命令行中执行以下命令npminstallkoa或者yarnaddkoa2.创建Koa应用在项目的根目录下,创建一个新的JavaScript文件(例如app.js),并
- Mysql+Nodejs+Koa2+Vue+Quasar零起点教程5:安装vue+quasar
工程师54
一、安装vue全局安装vue脚手架:npminstall-gvue-cli二、安装quasar全局安装quasar脚手架:npminstall-g@quasar/cli三、创建项目(前端)在d:\eddysproject目录下执行:quasarcreatefront执行项目创建后显示内容比较多,上面是前面部分,下图是后面部分:创建项目框架后,package.json中涉及到的软件包都已经同步自动下
- Vue2+Echarts+koa2+websocket电商平台数据可视化实时检测系统后端项目搭建(二)
三月的一天
前端工程化echartswebsocket前端node.jskoa
1.KOA2——基于Node.js平台的Web服务器框架由Express原班人马打造ExpressKoa,Koa2都是Web服务器的框架,他们之间的差别和关系可以通过下面这个表格表示出框架名作用异步处理Expressweb框架回调函数Koaweb框架Generator+yieldKoa2web框架async/await环境依赖Nodev7.6.0及以上由于Koa2它是支持async和await,所
- Vue2+Echarts+koa2+websocket电商平台数据可视化实时检测系统(一)
三月的一天
echarts前端javascript
项目最终的效果如图所示,最终效果涉及到6个图表,5种图表类型,它们分别是折线图,柱状图,地图,散点图,饼图.。每个图表的数据都是从后端推送到前端来的,不过在项目的初期,我们会先使用ajax由前端主动获取数据,后续会使用WebSocket进行改造。整个项目的架构是基于Vue的,所以我们需要创建Vue项目,然后在Vue项目中开发各个图表组件。1.前端项目的准备1.1.vue-c1i脚手架创建项目1.1
- 前端小白快速撸懂 mysql + koa2
三猪技术团队
前端开发工程师为什么要学习node?实际开发中会用到吗?答案是肯定的。Node.js是前端工程师必学的,如果你想在软件开发这行走的更远的话。node.js并不难学,反而收益会很大。此篇文章针对与有node.js基础的项目的创建1.全局安装koa-generator快速生成器npminstallkoa-generator-g类似于express项目的快速生成器,有一个基本的模板进行使用k1.jpg安
- koa2 vue antd upload上传跨域问题
gzjiert
前端vue.jsjavascript前端
在使用antd的a-upload使用同现跨域在vue…config.js已配proxy代理且koa后台已配置跨域另起一个web服务不用a-upload上传没有出现跨域在koa中已设置了koa2-cors的跨域配置app.use(cors({//任何地址都可以访问origin:"*",maxAge:5,//指定本次预检请求的有效期,单位为秒。credentials:true,//是否允许发送Cook
- Vue+Koa2+mongodb 搭建项目
小明真的要加油
node.jsvuemongodbvuemongodbnode.js
文章目录前言一、项目用到的一些关键依赖二、后端框架的基础搭建1.安装koa-generator2.使用koa-generator生成koa项目3.启动项目三、前端框架的基本搭建1.安装vue-cli2.创建vue项目3.启动项目四、后端实现基础的登录注册1.基础登录(1).连接数据库(2)编写业务代码实现登录(3)声明路由(4)在postman工具中实验即可(5)其他比如注册方法等等流程类似,这里
- Vue+Koa项目完整上线流程中遇到的问题
Leo_DLi
前端javascriptKoa2
程序员有时候“提笔忘字”,以下是此次过程中遇到的问题流水账,按顺序记录的,不再细分什么前端后端了.有些问题可能过于简单,勿喷!1,Koa的get,post请求怎么获取参数get类请求:直接使用ctx.query来获取前端传递来的参数post类请求:需要使用到koa-bodyparser中间件,然后通过ctx.request.body来获取前端传递的参数koa-bodyparser在使用koa2指令
- Koa项目搭建----从零搭建Koa项目
Leo_DLi
Nodenode.jsKoaKoa2
最近发现使用Koa创建项目的博客比较多,但是不够细致,为方便自己和他人,遂整理本博客。本博客会介绍以下内容:1,安装Koa脚手架,即koa-generator2,创建Koa1+项目3,创建Koa2+项目4,坑5,项目运行建议阅读完博客之后再下手操作!!!一,安装Koa脚手架----koa-generator终端执行以下指令:npminstall-gkoa-generator二,创建Koa1+项目终
- Vue 3 + Koa2 + MySQL 开发和上线部署个人网站
Leo_DLi
Web前端VueNodemysql前端Koa2Vue
Vue3+Koa2+MySQL开发和上线部署个人网站记录个人的一个操作步骤,顺序不分先后,嫌啰嗦请出门右转!环境说明:服务器:阿里云轻量应用服务器服务器系统:CentOS8.2本地环境:macOS12.7.2Node:20.10.0MySQL:8.0.26Vue:3.3.11Koa:2.7.0pm2:5.3.1Nginx:1.14.1一,环境配置除Nginx外,服务器环境和本地环境都是上述配置,N
- vue3 + element-plus + koa2 实现图片上传至七牛云
0kime
前端vue.jsjavascriptelementuinode.js
koa2后端代码准备工作:安装koa-multerkoa-qiniukoa-uuid命令:npmikoa-multerkoa-qiniukoa-uuid-S1、新建utils文件夹新建QiniuConfig.js文件存放七牛云配置信息letQINIU={};QINIU.accessKey='xxx';//七牛的accessKeyQINIU.secretKey='xxx';//七牛的secretKe
- Vue3+Koa2实现图片上传(不再畏惧)
勇宝趣学前端
Vue前端vue.jsjavascriptnode.js
大家好,我是勇宝,一个热爱前端的小学生,年关将至,提前祝大家新年快乐。今天呢,我们就来好好的啃一啃图片上传,从一个前端开发者的角度来探讨一下图片上传前后端到底都做了哪些事情。文章目录一、技术摘要二、图片上传流程概述1.前端2.后端三、项目搭建前端1.初始化Vue后端(koa2)1.全局安装脚手架2.初始化项目3.运行四、开始撸代码1.编写html骨架2.定义回显元素3.编写选择按钮逻辑4.回显选择
- express/koa2中使用http-proxy-middleware代理转发后端接口解决跨域问题
竹子js
express
由于后端接口没有设置允许跨域,故前端需要自己解决,如果前端项目是node起的服务,可以使用express/koa2框架,配合http-proxy-middleware中间件转发后端接口express中:1.先安装依赖npmihttp-proxy-middleware-D2.设置代理,可配置多条varapp=express();//设置反向代理解决跨域,类似nginx的反向代理,参考https://
- koa2 compose
wish_dd
functioncompose(middleware){//检查输入有效性确保输入为函数数组if(!Array.isArray(middleware))thrownewTypeError('Middlewarestackmustbeanarray!')for(constfnofmiddleware){if(typeoffn!=='function')thrownewTypeError('Middl
- Angular封装HttpClient文件下载
千寻物语
Angularangular.jsHttpClient文件下载
AngularHttpClient文件下载前言HttpRequest.tsdemo后端接口koa2示例功能优化实现下载进度监控前言使用Angular框架开发工作中,实现文件下载业务时,我们可以使用Angular自带的HttpClient。下面我们就封装一下HttpClient实现文件下载,当接口返回文件流正常下载,后端返回json错误信息时,前端可以获取到错误信息进行toast提示HttpRequ
- MySQL创建数据库连接池
林_深时见鹿
适用于Koa2和Express进行连接安装mysql驱动npminstallmysql--save创建mysql数据连接池,封装mysql请求constmysql=require('mysql');constpool=mysql.createPool({host:'127.0.0.1',user:'root',password:'root',database:'mydatabase'});letq
- node.js + koa2学习笔记
趁着年轻吃点苦
koa2javascriptnode.js
介绍Koa2koa2-创建项目//全局安装koa-generatornpminstallkoa-generator-g//利用koa-generator快速生成ejs模板的项目koa2koa-weibo-ekoa2-演示路由//实例化一个路由constrouter=require('koa-router')()//为这个路由添加前缀名router.prefix('/api/user')//处理ge
- Mysql+Nodejs+Koa2+Vue+Quasar零起点教程6:创建mysql数据库
工程师54
一、root登录d:\mysql\bin>mysql-uroot-p123二、创建数据库CREATEDATABASEIFNOTEXISTStest_db1;三、创建用户CREATEUSER'testuser1'@'localhost'IDENTIFIEDBY'123456';命令:CREATEUSER'username'@'host'IDENTIFIEDBY'password';说明:userna
- koa2实践项目-进阶
人穷脸丑小前端
路由koa-generator是把路由放到了app.js里面了,这里我单独提出来建立router.js,然后app.js引入。这是我的项目目录上面是我的项目目录,后面慢慢解释。routes和api两个文件夹,其实都算路由配置,只不过我把后端渲染的页面数据和提供的接口数据分开放了,routes里面路由是渲染ejs模板,api里面的提供前后端分离的接口。下面是router.js代码constRoute
- nodejs + nodemailer 实现发送邮件功能
0000000asdasd
qq邮箱的授权码的获取方式https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256163邮箱的授权码的获取方式http://www.downxia.com/zixun/19894.html官方文档https://nodemailer.com/about/用的是nodejs+koa2//首先引入importNodemail
- Vue+Koa2 搭建前后端分离项目
Leo_DLi
VueNodeVueKoa2跨域
Vue+Koa2搭建前后端分离项目简单的一个Demo演示:Vue和Koa2在本地搭建前后端分离项目.重点:跨域当前环境:1,Vite搭建的Vue前端项目(也就是Vue3了).2,Koa2搭建的后端项目.前端项目在localhost:5173端口下运行,后端项目在localhost:3000端口下运行,因此,前端通过Ajax请求后端的接口就会存在跨域问题.本文的终点也在聊如何实现跨域.一,Vue前端
- 校园管理系统 总结
去年的牛肉
介绍school-manager校园管理后台服务实现了简单的校园管理业务。特点是环境基础良好,适合教学,和二次开发。学校增删盖查专业增删改查班级层删改查学生增删改查老师增删改查软件架构nodejs(koa2mongoose)element-uiadmin-element开发工具数据库:mongodbide(项目开发工具):webstorm安装教程一.后台服务代码地址school-manager-s
- 2018-06-28 koa2的入坑之路
十月鹰飞
首先吐槽下阿里云的轻云服务器。其次感慨下自己给自己挖的大坑。最后来看nodeJS的web开发。打算用koa2来开发公司的企业网站。
- KOA2 + MongoDB 和 MySQL混用的项目 nodejs restful API框架
狼丶宇先森
有时候因项目需要.在koa中需要使用多个数据库和多种数据库此以MongoDB和MySQL为例此项目中用到了2个MySQL和多个MongoDB,其中MongoDB的库名生成是由时间生成的如2018_11_09,这种采用动态库名链接的方式进行连接.github地址:https://github.com/langyuxiansheng/base-restfulapi-server可以与配套的管理后台一起
- koa2入门
大乔是个美少女
【链接】koa入门https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001471087582981d6c0ea265bf241b59a04fa6f61d767f6000【链接】「新手向」koa2从起步到填坑http://www.jianshu.com/p/6b816c609669【
- 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节点最多