- 算法分类合集
weixin_30784945
算法分类合集ACM所有算法数据结构栈,队列,链表哈希表,哈希数组堆,优先队列双端队列可并堆左偏堆二叉查找树Treap伸展树并查集集合计数问题二分图的识别平衡二叉树二叉排序树线段树一维线段树二维线段树树状数组一维树状数组N维树状数组字典树后缀数组,后缀树块状链表哈夫曼树桶,跳跃表Trie树(静态建树、动态建树)AC自动机LCA和RMQ问题KMP算法图论基本图算法图广度优先遍历深度优先遍历拓扑排序割边
- ACM算法分类(要学习的东西还很多)
还是太年轻
ACM所有算法数据结构栈,队列,链表哈希表,哈希数组堆,优先队列双端队列可并堆左偏堆二叉查找树Treap伸展树并查集集合计数问题二分图的识别平衡二叉树二叉排序树线段树一维线段树二维线段树树状数组一维树状数组N维树状数组字典树后缀数组,后缀树块状链表哈夫曼树桶,跳跃表Trie树(静态建树、动态建树)AC自动机LCA和RMQ问题KMP算法图论基本图算法图广度优先遍历深度优先遍历拓扑排序割边割点强连通分
- ACM算法目录
龍木
ACM所有算法数据结构栈,队列,链表哈希表,哈希数组堆,优先队列双端队列可并堆左偏堆二叉查找树Treap伸展树并查集集合计数问题二分图的识别平衡二叉树二叉排序树线段树一维线段树二维线段树树状数组一维树状数组N维树状数组字典树后缀数组,后缀树块状链表哈夫曼树桶,跳跃表Trie树(静态建树、动态建树)AC自动机LCA和RMQ问题KMP算法图论基本图算法图广度优先遍历深度优先遍历拓扑排序割边割点强连通分
- 【TRIE字典树实现:400行】(模糊匹配 | AC自动机 | 多模式匹配 | 串排序 | 词频计数 | 相似度分析 | RAII模式 | 前缀比较 )
XNB's Not a Beginner
算法语言特性ModernCppADT数据结构实现c++算法开发语言哈希算法图论数据结构链表
目录程序测试[insert_erase_countDEMO]插入测试【ACAutomiton|MultipatternmatchingDEMO】AC自动机|多模式匹配测试【RecursivetdeepcopyconstructDEMO】多叉树的递归深拷贝测试【stringsortDEMO】串的非比较排序测试【fuzzypatternmatchingDEMO】模糊匹配测试【Similarityana
- AC自动机
b1ue1ue1ue
java算法开发语言
AC自动机-OIWiki(oi-wiki.org)给定一个长度为m主串再给出n个平均长度为w模式串问这些模式串分别出现了多少次。如果对n个模式串分别进行kmp算法那么时间复杂度:n次匹配每次(m+w)所以是O(nm+nw)ac自动机时间复杂度:建树O(w*n)建立fail数组O(w*n)匹配O(w*m)所以是O(wm+nw)所以可知当n相对于w很大即模式串的数量较模式串的平均长度很大时就应该用AC
- hdu4511 小明系列故事——女友的考验 [kuangbin专题-ac自动机]
Ayews
ac自动机字符串算法竞赛相关字符串
这道题需要我们将路径表示成字符串形式,再构造fail指针。需要注意的是开始位置是1号点,也就是ch[0][0],而不是根节点。当然如果给的路径中不含一号点,那可以理解成从根结点出发。dp数组保存需要走的最长路径。#include#include#include#include#include#include#definefifirst#definesesecond#defineFINfreopen
- AC自动机 模板
ZSJZ_liuzian
字符串-杂类AC自动机字符串模板
#include#include#include#includeusingnamespacestd;#defineN2000010#defineM3010queueq;charst[N];struct{intp[26],s=0,fail;}a[M*10];inttot=1;intmain(){intn,m,i,j;scanf("%d%d",&n,&m);for(i=1;i1&&!a[p].p[i]
- ac自动机模板
多行不译必自闭
任务清单ac自动机模板
易理解版本://http://acm.hdu.edu.cn/showproblem.php?pid=2222#includeusingnamespacestd;constintmaxn=1e6+10;structTri{intch[maxn][26],val[maxn],fail[maxn],sz;voidinit(){memset(ch[0],0,sizeof(ch[0]));sz=0;}voi
- hdu 2222 AC自动机模板(非指针)
EMber _
AC自动机AC自动机
题意:给一串字符串再给一个字符串,求前面那些串有多少出现在这个串中。n#include#include#include#include#include#definefo(i,a,b)for(inti=a;iq;voidinsert(intx,inty){if(y==len){out[x]++;return;}intw=ch[y]-'a';if(!trie[x][w])trie[x][w]=++cn
- AC自动机模板
现在我也是
一些模板算法数据结构
找到模式串在文本串中出现的个数(洛谷p3796)#includeusingnamespacestd;#definelllonglongstructtree{intfail;intvis[26];intnum;}ac[1000005];//所有模式串构成的字典树intcnt=0;voidbuild(stringstr)//构建字典树{intsz=str.length(),now=0;for(inti
- HDU-5955 Guessing the Dice Roll(AC自动机、高斯消元)
上总介
文章目录原题链接题意思路推导代码原题链接GuessingtheDiceRoll题意给定N(1≤N≤10)N(1\leqN\leq10)N(1≤N≤10)个长度都为L(1≤L≤10)L(1\leqL\leq10)L(1≤L≤10)的数字序列Ti(1≤i≤10)T_i(1\leqi\leq10)Ti(1≤i≤10),数字序列仅由{1,2,3,4,5,6}\left\{1,2,3,4,5,6\right
- AC自动机 模板
泠楠子
模板c++算法
#include#defineIOSios::sync_with_stdio(0);cin.tie(0);cout.tie(0);#defineendl'\n'usingnamespacestd;typedeflonglongll;constintN=10010*50,M=1000010;inttr[N][26],cnt[N],idx;charstr[M];intq[N],ne[N];voidin
- AC自动机实现屏蔽单词
突击手平头哥
多模式自动匹配AC自动机KMP是多模式匹配算法,解决的是一个字符串匹配多个模式串的问题,该字符串往往短于或者等于模式串的长度(自动补全功能);如果需要实现关键字屏蔽呢?那就是我们需要在一个主串中匹配多个模式串.AC自动机原理AC自动机就是在Trie树上,加上了类似KMP的next数组,结合的实现.Trie树中的next数组ynq2VmaxQz7HUk45.png 考虑KMP的实现,在Trie树中
- 免费的敏感词检测网站推荐
HappyLearnerL
笔记
文章目录敏感词检测算法介绍:AC自动机基于机器学习敏感词检测用用场景社交媒体平台聊天软件和即时通讯工具线文本编辑器和评论系统网站论坛和博客平台在线游戏和虚拟社交平台敏感词检测平台推荐使用微信扫码登录检测页面展示检测演示敏感词检测算法介绍:敏感词检测使用算法涉及到多种方法和技术,下面我将详细解释几种常用的敏感词检测算法。基于词典匹配:这是一种简单但常用的方法。首先,将敏感词通过构建成一个词典的形式进
- 数据结构和算法学习笔记-字符串匹配(BF RK)
像一只小蜗牛
数据结构和算法BFRK字符串匹配
字符串匹配单模式串匹配算法:BF算法和RK算法BM算法和KMP算法多模式串匹配算法:Trie树和AC自动机BF算法=BruteForce=暴力匹配算法,也叫朴素匹配算法主串(n)和模式串(m)n>m我们要对比m个字符,要对比n-m+1次最坏时间复杂度O(n*m)1.串不长,遇到不能匹配的字符的时候就可以退出了,大部分情况下效率比最差情况高很多2.思路简单,实现简单。符合KISS(KeepitSim
- 【数据结构与算法】字符串匹配 BF算法 RK算法
CryptWinter
算法算法javaBF算法BK算法数据结构
单模式串匹配BF算法和RK算法BM算法和KMP算法多模式串匹配算法Trie树和AC自动机一、BF算法1,BF算法是BruteForce的缩写,中文译作暴力匹配算法,也叫朴素匹配算法。2,两个概念:主串和模式串如在字符串A中查找字符串B,则字符串A就是主串,字符串B就是模式串将主串长度记为n,模式串的长度记作m。因为是在主串中查找模式串,所以n>m3,BF算法的思想可概括为:我们在主串中,检查起始位
- 数据结构与算法之美学习笔记:36 | AC自动机:如何用多模式串匹配实现敏感词过滤功能?
浊酒南街
数据结构与算法之美学习笔记数据结构算法
目录前言基于单模式串和Trie树实现的敏感词过滤经典的多模式串匹配算法:AC自动机解答开篇内容小结前言本节课程思维导图:很多支持用户发表文本内容的网站,比如BBS,大都会有敏感词过滤功能,用来过滤掉用户输入的一些淫秽、反动、谩骂等内容。你有没有想过,这个功能是怎么实现的呢?实际上,这些功能最基本的原理就是字符串匹配算法,也就是通过维护一个敏感词的字典,当用户输入一段文字内容之后,通过字符串匹配算法
- Aho Corasick Algorithm
Bigcrab__
数据结构与算法算法python
文章目录前言介绍实现参考前言AhoCorasickAlgorithm又叫AC自动机,该算法是一个匹配算法,用来匹配文本Text中多个patterns分别出现的次数;我们定义n为patterns的总长度;m为Text的长度;问题:在ahishershe文本中找出以下"he","she","hers","his"各个patterns出现的次数;最直接的暴力解法时间时间复杂度为O(n*m),如果采用KM
- AC自动机
花落yu
java算法开发语言
AC自动机关键数组ne[u]数组:(1)存节点u的回跳边(2)所指节点是当前节点的最长后缀(3)回跳边指向父节点的回跳边所指节点的儿子ch[u]数组:(1)ch[u][i]存节点u沿i走的转移边或者树边(2)所指节点一定是当前节点的最短路(3)转移边指向当前节点的回跳边所指节点的儿子模板代码importjava.util.ArrayDeque;importjava.util.Queue;impor
- CSP-S 2021 游记
<故人听雨€>
奇技淫巧个人开发
谨以此文结束我的OIer生涯Day0:18-9-2021那天正好上午中秋放假,下午又回到学校机房复习,还在校门口偶遇物理左神。和灿哥和ZY在机房看了一下午BiliBili。晚上吃完饭和ZY在五楼打了会per。回到机房,看了看线段树,AC自动机,动规,爆肝一道NOI级数学题,LikeThis:那天晚上雨下得很大,幸好在路上遇到了垚和希哥,顺路回去了。洗洗睡吧~Day1:19-9-2021上午是初赛提
- ac自动机(字典树和kmp的延伸)(待更新)
蒲公英之殇
字符串算法
多模匹配算法模板题:给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。(hdu2222)#include#pragmaGCCoptimize(2)usingnamespacestd;typedeflonglongll;constintinf=0x3f3f3f3f;constintmaxn=1e6+7;inta[maxn][26],fail[maxn],cnt[maxn
- AC自动机模板(hdu2222)
weixin_34208283
数据结构与算法
拜读了大牛们的代码,对AC自动机的了解又加深了一步。不过刚才去一个QQ群推荐的题集里看了下,里面的题目还是不能顺利的解决,看来还需要更深入的去了解。下面是hdu2222的题解,感觉可以作为不错的AC自动机模板代码。#includeusingnamespacestd;constintkind=26;structnode{node*fail;//失败指针node*next[kind];//Tire每个
- AC自动机练习解题题集
77458
ACM_字符串处理
需要提前学习AC自动机的知识点:大牛的AC自动机详解HDU2222KeywordsSearch(传送门)题意求目标串中出现了几种模式串解题思路裸的AC自动机,使用一个标志模式串结尾的end数组,查询一次,将相应的end数组清零即可。代码/*头文件模板*/#include#include#include#include#include#include#include#include#include#
- ac自动机题集和应用
左佥都御史
字符串处理ac自动机指针
最近需要使用ac自动机。补了一下算法。https://www.cnblogs.com/sclbgw7/p/9260756.htmlhttps://www.cnblogs.com/sclbgw7/p/9875671.html大佬的博客下面说自己的心得(算法的理解要等我多刷一些题在写。)1大佬博客说的辅助根优化,我没有发现。正常的字典树不都是有一个根么。ac自动机也用0做根,没毛病啊。2链表可以写tr
- 码题集-AC自动机(模板)
y_lov
算法数据结构
AC自动机:(1)一个长串,多个短串,求长串中匹配了几个短串(包括分别匹配了几个,总共匹配了几类)(2)此处模板为长串中匹配了几个短串;(3)复杂度为O(n);(4)理论基础Trie树KMP链表思路:(1)问题分析:给定1e6模式长串,多个短串,求其中匹配的各模式串中个数最大者及其个数;(2)分析:多模式串匹配问题,考虑AC自动机;(3)过程:建立string数组与int数组统计短串及其个数;先建
- AC自动机(简单模板)
AE_
算法c++数据结构
AC自动机,就相当于是在字典树上用kmp。next数组回退的位置为最大匹配字符串在字典树上的节点位置。在获取字典树上的next数组的时候用的是BFS每次相当与处理的一层。下图中红线为,可以回退的位置,没有红线的节点回退的位置都是虚拟原点。intn,m;into[N];inttr[N][26],cnt[N],idx;charstr[N];intq[N],ne[N];inlinevoidinsert(
- 基于C#实现AC自动机算法
神仙别闹
C#教程算法c#算法开发语言
我要检查一篇文章中是否有某些敏感词,这其实就是多模式匹配的问题。当然你也可以用KMP算法求出,那么它的时间复杂度为O(c*(m+n)),c:为模式串的个数。m:为模式串的长度,n:为正文的长度,那么这个复杂度就不再是线性了,我们学算法就是希望能把要解决的问题优化到极致,这不,AC自动机就派上用场了。其实AC自动机就是Trie树的一个活用,活用点就是灌输了kmp的思想,从而再次把时间复杂度优化到线性
- 【TODO】2023年秋招笔试未竞
StevenGerrad
面经算法数据结构概率论
2023年秋招笔试没做完的题腾讯20230326笔试三道米哈游20230813笔试第三题网易雷火0820第2、3、4题第三题深信服0912B卷3、4题第三题(背包装满最小数量)第四题腾讯0915重考最后一道字节0917秋招第五场第一题AC自动机腾讯20230326笔试三道米哈游20230813笔试第三题是计算抽中什么当期五星的期望。现在的程序结果是99.6087。结果不对,有时间再调。#inclu
- 专题·AC自动机
樱狸❀
字符串AC自动机
初见安——!!这里是咕咕咕好久好久的樱狸QvQ考完初赛了有一点点的空闲时间来整理一下博客【因为发现忘性很大……超过一个月没用的东西就记不住了QAQ前置知识:KMP,tire树。一、AC自动机其实AC自动机就是在tire树上KMP。举个例子:给你一个串S,一个串T,求T在S中出现的次数。显然KMP线性匹配。那么如果给你一个串S,很多串T,问你每个串在S中的出现次数呢?复杂度就不保了。这时就要用到AC
- AC自动机
不能AC的小菜鸡
算法c++数据结构
#include#include#include#includeusingnamespacestd;constintN=2*1e6+10;inttrie[N][26];//字典树intcntword[N];//记录单词出现的次数intfail[N];intcnt=0;voidinsert(strings){introot=0;for(inti=0;iq;for(inti=0;i>n;strings
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include