- 基于odoo17的设计模式详解---备忘模式
花好月圆春祺夏安
设计模式数据库
大家好,我是你的Odoo技术伙伴。在开发复杂的业务流程时,我们有时会遇到这样的需求:在对一个对象进行一系列复杂操作之前,保存其当前状态,以便在操作失败或用户希望撤销时,能够一键恢复到操作之前的样子。或者,我们需要追踪一个对象(如一份合同)在不同时间点的所有历史版本。实现这种“状态快照”和“时光倒流”功能的背后,正是我们今天要探讨的设计模式——备忘录模式(MementoPattern)。一、什么是备
- python win32con_python win32com.client
weixin_39604598
pythonwin32con
#创建#wordw=win32com.client.Dispatch("Word.Application")w=win32com.client.DispatchEx("Word.Application")#使用启动独立的进程#excelxlApp=win32com.client.Dispatch("Excel.Application")#后台运行,不显示,不警告w.Visible=0;w.Disp
- ubuntu2404命令备忘录
Eva215665
gitcode
ubuntu基础概念什么是BashShellBashShell(全称Bourne-AgainSHell)是Linux和macOS等类Unix系统中最常用的命令行解释器,也是Ubuntu的默认Shell。它既是用户与操作系统内核交互的“翻译官”,也是一种强大的脚本编程语言。用户输入文本命令(如ls、cd)→Bash解析并执行→调用系统内核功能(如文件操作、进程管理)→返回结果到终端。
- 设计模式 19 观察者模式
设计模式19创建型模式(5):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式结构型模式(7):适配器模式、桥接模式、组合模式、装饰者模式、外观模式、享元模式、代理模式行为型模式(11):责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式文章目录设计模式19观察者模式(ObserverPattern)1定义2结构
- 【C++】备忘录模式
OpenC++
设计模式c++备忘录模式设计模式
目录一、模式核心概念与结构二、C++实现示例:文本编辑器撤销功能三、备忘录模式的关键特性四、应用场景五、备忘录模式与其他设计模式的关系六、C++标准库中的备忘录模式应用七、优缺点分析八、实战案例:游戏角色状态存档九、实现注意事项如果这篇文章对你有所帮助,渴望获得你的一个点赞!备忘录模式(MementoPattern)是一种【行为型】设计模式,它允许在不破坏对象封装性的前提下,捕获并保存对象的内部状
- 行为型设计模式-备忘录模式
网络深处的易某某
设计模式设计模式备忘录模式开发语言后端
一、备忘录模式备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤,当新的状态无效或者存在问题时,可以使用暂时存储起来的备忘录将状态复原,很多软件都提供了撤销(Undo)操作,如Word、记事本、Photoshop、IDEA等软件在编辑时按Ctrl+Z组合键时能撤销当前操作,使文档恢复到之前的状态;还有在浏览器中的后退键、数据库事务管理中的回滚操作、玩游戏时的中间结果存
- Mac 部署 Dify小红书种草工作流
使用Mac部署Dify,打造小红书内容自动生成工作流在日常运营小红书内容时,很多人会觉得「想选题难、起标题难、写种草句更难」。今天分享我个人的工作流,如何用Mac+Dify+苹果快捷指令组合,打造一个自动生成内容并保存到备忘录的高效系统。1.我的目标作为一个IT背景的内容创作者,我的核心诉求是:快速生成选题和不同方向的切入点统一管理提示词,方便迭代优化在手机端直接调用,随时记录灵感并保存到备忘录因
- 杂记备忘录
疯子乱语
杂记
复活xx用Charles拦截xx的认证请求,并修改响应(code码超过20位才能拦截到)。#请求http://api.yuhengye.com/activecode/bind?code=88888888888888888888888&device_id=xxxx&device_name=xxxx&uid=xxxxx&name=xxx#响应{"code":0,"data":{"code":"xxxx
- python win32com.client
dehong2015
python
搜集的一些关于win32com.client操作office的相关用法#创建#wordw=win32com.client.Dispatch("Word.Application")w=win32com.client.DispatchEx("Word.Application")#使用启动独立的进程#excelxlApp=win32com.client.Dispatch("Excel.Applicati
- 事件派发dispatchEvent
1、什么是dispatchEvent?dispatch意为“调度”、“派遣”,event为“事件”。所以dispatchEvent即向指定事件目标派发一个事件,并以合适的顺序触发受影响的事件目标。简单来说就是,一般的事件触发都是用户进行某些操作时才会触发,而使用dispatchEvent就可以在代码中手动触发事件了。下面是一个简单的创建并派发事件的例子:varevent=newEvent('cli
- 90%的鸿蒙开发者都会踩坑!数据持久化失败的5大雷区及备忘录应用实战
harmonyos
摘要在鸿蒙应用开发中,数据持久化失败是高频痛点。本文通过一个备忘录应用实例,结合真实开发场景,分析权限缺失、路径错误、存储不足等五大常见问题的解决方案,并提供完整可运行的代码实现与避坑技巧。描述想象你开发了一款备忘录App,用户反馈保存的内容经常丢失。经排查,发现不同设备上因权限、存储空间等问题导致数据持久化失败。下面通过一个轻量级备忘录功能,演示如何规避这些“坑”。题解答案:五大问题解决方案问题
- JAVA设计模式概览
谭震鸿
java设计模式
前言设计模式概览,网络备忘录一、创建型设计模式主要关注点是“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。创建型模式分为以下5种。单例(Singleton)。某个类只能生成一个实例,该类提供了一个全局访问点供外部获取该实例,其拓展是有限多例模式。原型(Prototype)。将一个对象作为原型,通过对其进行复制而克隆出多个和原型类
- 设计模式-备忘录模式
蔡蓝
设计模式备忘录模式java
备忘录模式1.什么是备忘录模式?想象一下你在玩一个有存档功能的游戏。当你觉得当前进度不错,或者要进行一个有风险的操作前,你会选择“存档”。这个“存档”就保存了你当前游戏的所有状态(比如角色位置、等级、物品栏等)。如果后续操作失败或者你想回到之前的状态,你就可以“读档”,恢复到存档时的状态。备忘录模式就是这样一种行为型设计模式,它的核心思想是:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对
- 20、 深入理解Rails中的Action Dispatch和Action Controller
XU美伢
Rails6敏捷开发实战指南RailsActionDispatch
深入理解Rails中的ActionDispatch和ActionController1.ActionPack的核心地位在Rails应用程序中,ActionPack占据了核心地位。它由三个主要的Ruby模块组成:ActionDispatch、ActionController和ActionView。这些模块协同工作,确保了应用程序能够高效地处理HTTP请求并返回相应的响应。具体来说:ActionDis
- vue实现打包前端代码部署到服务器之后提示用户刷新界面
行云流水626
javascript前端开发语言
classUpdater{oldScript:any=[];newScript:any=[];dispatch:any={};constructor(){this.oldScript=[];this.newScript=[];this.dispatch={};if(import.meta.env.MODE!='development'){this.init();//初始化this.timing()
- 负载均衡连接方法oracle,oracle 负载均衡连接方式常用SQL语句备忘录
四犬夕
负载均衡连接方法oracle
1.---表中有重复记录用SQL语句查询出来select*fromRechargewhereRechargeSerialin(selectRechargeSerialfromRechargegroupbyRechargeSerialhavingcount(*)>1)2.oracledes加密函数方法createorreplacefunctionencrypt_des(p_textvarchar2,
- Redux中间件原理
前端岳大宝
前端核心知识总结前端前端框架react.js中间件
以下是关于Redux中间件原理的系统梳理:一、中间件的核心作用扩展Dispatch能力:处理非普通对象类型的Action(如函数、Promise)流程拦截:在Action到达Reducer前进行预处理功能增强:添加日志、异步处理、错误监控等能力链式处理:多个中间件形成处理管道二、中间件架构三要素要素作用示例柯里化结构分层接收store/next/actionstore=>next=>action=
- Redux中间件的实践
weixin_34252686
javascriptjsonuiViewUI
最近项目前端开发框架采用React+Redux进行实现,但是,如何异步访问服务器端,以及想要在开发过程中进行状态树日志的输出,所以怎么才能解决这两个问题?采用Redux中间件为什么要使用中间件在利用Redux进行状态管理时,用户在UI层面触发行为,一个action对象通过store.dispatch派发到Reducer进行触发,接下来Reducer会根据type来更新对应的Store上的状态树,更
- java简单备忘录程序_菜鸟初学Java的备忘录(六) (转)
魏水华
java简单备忘录程序
菜鸟初学Java的备忘录(六)(转)发布时间:2020-08-1801:37:55来源:ITPUB博客阅读:65作者:worldblog菜鸟初学Java的备忘录(六)(转)[@more@]2003年1月21日星期二晴通过程序建立了实际的概念之后,现在应该回到最开始的问题,Socket是什么?是实现计算机通信的一种方式,这毫无疑问.但如何能够用最容易理解的语言比较形象而又不偏颇的描述它的原理呢?Br
- React hook之userReducer
沪cares
reactreact.jsreact
在React中,useReducer是一个用于管理复杂状态逻辑的Hook,它类似于Redux中的reducer模式,但更轻量且适用于组件内部或结合ContextAPI实现全局状态管理。以下是useReducer的详细用法指南:1.基本语法const[state,dispatch]=useReducer(reducer,initialState);reducer:一个函数,接收当前状态和action
- vue this.$router.push 两次跳转路由,页面不刷新问题
cc雨小果
vue.js
functiongoRoute(){//路由数组letvisitedViews=this.$store.state.tagsView.visitedViews;for(letiinvisitedViews){//遍历找到对应路由if(visitedViews[i].name==='跳转路由名称'){this.$store.dispatch('tagsView/delCachedView',visi
- 华为鸿蒙原生应用碰一碰分享
程序媛夏天
华为harmonyos
华为鸿蒙原生应用碰一碰分享华为分享新推出碰一碰分享,支持用户通过碰一碰发起跨端分享,可实现传输图片、共享wifi等。场景介绍宿主应用进入一个可以分享的界面,比如打开或者选中的一个文件、一条备忘录、一个联系人详情,或个人热点/WIFI等。宿主应用可以分享多个内容,如选中的多张图片等。手机应用发起碰一碰分享时,双端设备需要在亮屏、解锁的状态下并且都已开启华为分享服务(系统默认开启),设备顶部轻碰即可触
- Java设计模式之备忘录模式详解
季鸢
设计模式java设计模式备忘录模式
Java设计模式之备忘录模式详解一、备忘录模式核心思想核心目标:捕获对象内部状态并在需要时恢复,同时不破坏对象的封装性。如同游戏存档系统,允许玩家保存当前进度并在需要时回退到之前的状态。二、备忘录模式类图(Mermaid)创建存储Originator-state:String+saveToMemento():Memento+restoreFromMemento(Memento)+setState(
- Python学习(1) ----- Python的文件读取和写入
hello kitty w
Pythonpython学习java
这篇文章主要用于备忘录,记录一下Python中的文件读取和写入,以及用到的相对路径和绝对路径。一、文件的读取在Python中,读取文件有几种常用方式,适合不同的应用场景。以下是最常见的读取方式以及对应的代码实例:假设我们有一个文件example.txt,内容如下:HelloworldThisisasamplefile.Pythonisgreat!✅1.逐行读取:使用forlineinfilewit
- Redux-Thunk 使用与实现原理详解
weixin_43991457
reactreact.js前端javascriptreactjs
一、redux-thunk是什么?redux-thunk是Redux的一个中间件,用于处理异步action的分发。默认Redux的dispatch只能处理普通对象(plainobject),不支持函数、Promise等复杂类型,而redux-thunk则扩展了dispatch,使其可以接受函数作为action。thunk:在编程中,thunk是一个延迟执行的函数,通常用于控制副作用或延迟计算。主要
- docker中启动jupyter
蜡笔不是油画棒
pythondockerjupyter
(仅作为备忘录,不具有教程意义)1.打开dockerdesktop2.找到配好jupyter和torch的容器py63.运行py6的控制台4.直接输入jupyternotebook-ip0.0.0.0--allow-root--port8888--no-browser5.在浏览器中输入http://localhost:8888/6.即可得到在docker中打开的jupyter
- 板凳——————————————————c++(103)
fengye207161
#include#include#includetemplatestd::ostream&operatorconstexprTget_val_dispatch(std::pairconst&pair,index_tag){returnpair.first;}templateconstexprUget_val_dispatch(std::pairconst&pair,index_tag){retur
- Java 可扩展状态系统设计:备忘录模式的工程化实践与架构演进
琢磨先生David
java设计模式架构
一、备忘录模式的核心概念解析(一)模式定义与本质备忘录模式(MementoPattern)是一种行为型设计模式,其核心思想是在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。其本质是通过封装状态对象实现历史状态的管理,避免直接暴露对象内部细节。(二)核心解决问题状态管理难题:当需要记录对象的历史状态(如撤销操作、状态回滚)时,如何
- FLASK-转化为exe
YiYo832
flaskpython后端
本篇质量较低,个人备忘录前言写好了的FLASK项目需要打包成exe,保证没有python环境的电脑也能进行展示网页。方法主要是参考了一下blog和帖子:使用pyinstaller将python项目打包发布为exe可执行文件-知乎(zhihu.com)Flask将FlaskWeb应用程序转换为独立可执行的桌面应用程序|极客教程(geek-docs.com)使用PyInstaller将flask打包为
- Python:Excel表格变成图片
小鸿叔
PythonPythonExcel表格转换图片
importwin32com.clientaswin32fromPILimportImageGrabexcel=win32.Dispatch('Excel.Application')wb=excel.Workbooks.Open('C:\\test.xlsx')ws2=wb.WorkSheets('DepartmentW')ws2.Range("A1").Value=6ws=wb.WorkShee
- 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节点最多