- 算法:矩阵对角线元素的和
从bug中生存下来的IT小白
算法算法leetcode
leetcode矩阵对角线元素的和一个正方形矩阵,求对角线元素的和代码:intdiagonalSum(int**mat,intmatSize,int*matColSize){intsum=0;for(inti=0;i
- 力扣刷题Day 3 | 203.移除链表元素,707.设计链表,206.反转链表
Present*
算法刷题算法leetcodepython
203.移除链表元素题目链接力扣(LeetCode)官网-全球极客挚爱的技术成长平台视频讲解手把手带你学会操作链表|LeetCode:203.移除链表元素_哔哩哔哩_bilibili笔记移除链表元素要分两种情况,一是要移除的元素为头节点,二是要移除的元素为非头节点。为了简化代码,定义一个虚拟头节点dummy_head=ListNode(next=head)遍历从dummy_head开始,由于最后要
- LeetCode第109题_有序链表转换二叉搜索树
@蓝莓果粒茶
算法leetcode链表算法数据结构c++pythonc#
LeetCode第109题:有序链表转换二叉搜索树题目描述给定一个单链表的头节点head,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。难度中等题目链接点击在LeetCode中查看题目示例示例1:输入:head=[-10,-3,0,5,9]输出:[0,-3,9,-10,null,5]解释:一个可能的答案
- python-leetcode-704. 二分查找
Joyner2018
leetcode算法职场和发展
704.二分查找-力扣(LeetCode)可以使用二分查找来实现这个功能,时间复杂度为O(logn)。下面是Python代码:defbinary_search(nums,target):left,right=0,len(nums)-1whilelefttarget,说明target在左半部分,调整right=mid-1。继续循环,直到left>right,如果未找到目标值,返回-1。这种方法在有序
- 解题思路:LeetCode 2711. 对角线上不同值的数量差
迪小莫学AI
每日算法leetcode算法职场和发展
解题思路:LeetCode2711.对角线上不同值的数量差在LeetCode的题目2711中,我们需要计算一个矩阵中每个单元格的左上角对角线和右下角对角线上不同值的数量差。这个问题可以通过暴力法解决,但效率较低。本文将介绍一种更高效的解决方案,并通过Python代码实现。问题描述给定一个大小为mxn的二维矩阵grid,我们需要求解一个新的答案矩阵answer,其中每个单元格(r,c)的值是该单元格
- 【leetcode hot 100 215】数组中的第K个最大元素
longii11
leetcode算法java
解法一:维护最大最小值->堆->k个元素的最小值堆classSolution{publicintfindKthLargest(int[]nums,intk){//维护最大最小值->堆->k个元素的最小值堆PriorityQueueheap=newPriorityQueuen1-n2);for(inti=0;ik){//维护k个元素的最小值堆heap.poll();}}returnheap.peek
- 代码随想录算法训练营day24: 122.买卖股票的最佳时机II & 55. 跳跃游戏 & 45.跳跃游戏II & 1005.K次取反后最大化的数组和
胡某在路上
贪心算法数据结构
122.买卖股票的最佳时机II122.买卖股票的最佳时机II-力扣(LeetCode)这道题需要仔细思考后就能想到我们需要收集每天的正利润就可以,收集正利润的区间,就是股票买卖的区间,而我们只需要关注最终利润,不需要记录区间。classSolution{public:intmaxProfit(vector&prices){intresult=0;for(inti=1;i&nums){intcove
- Day28 买卖股票的最佳时机 跳跃游戏 跳跃游戏 II K 次取反后最大化的数组和
落叶过河
代码随想录算法打卡算法数据结构贪心算法java
贪心算法part02122.买卖股票的最佳时机II-力扣(LeetCode)求最大利润将每天的正利润加和publicintmaxProfit(int[]prices){inttotalPrices=0;for(inti=0;iprices[i]){totalPrices+=prices[i+1]-prices[i];}}returntotalPrices;}55.跳跃游戏-力扣(LeetCode)
- 链表使用基础——如何创建链表
榛果咖啡有点苦
链表
链表使用基础——如何创建链表前言leetcode题2两数相加已知两个非空链表,表示两个非负整数,每位数字都是按照逆序方式存储,每个节点存储一位数字将这两个数相加,并以相同形式返回一个表示和的链表假设:除了数字0以外,这两个数不会以0开头示例:建立结果链表structListNode*addTwoNumbers(structListNode*l1,structListNode*l2){intadd=
- 代码随想录算法训练营第二十五天 | 491. 非递减子序列、46. 全排列、47.全排列 II、332. 重新安排行程、51. N 皇后、37. 解数独
榛果咖啡有点苦
代码随想录算法训练营算法
491.非递减子序列题目链接:https://leetcode.cn/problems/non-decreasing-subsequences/description/文档讲解:https://programmercarl.com/0491.%E9%80%92%E5%A2%9E%E5%AD%90%E5%BA%8F%E5%88%97.html状态:已完成思路:本题考察的是在无序数组中可能有重复元素的
- 代码随想录算法训练营第三十六天 | 1049. 最后一块石头的重量 II、494. 目标和、474. 一和零
榛果咖啡有点苦
代码随想录算法训练营算法
1049.最后一块石头的重量II(*)题目链接:https://leetcode.cn/problems/last-stone-weight-ii/文档讲解:https://programmercarl.com/1049.%E6%9C%80%E5%90%8E%E4%B8%80%E5%9D%97%E7%9F%B3%E5%A4%B4%E7%9A%84%E9%87%8D%E9%87%8FII.html状
- 高频SQL50题 第四天 | 1251. 平均售价、620. 有趣的电影、1075. 项目员工 I、1633. 各赛事的用户注册率
榛果咖啡有点苦
高频SQL50题mysql
知识点导览:日期大小比较;ifnull(字段,默认值)函数;取余操作;字符串比较like;逆序desc1251.平均售价题目链接:https://leetcode.cn/problems/average-selling-price/description/?envType=study-plan-v2&envId=sql-free-50状态:已完成考点:判断日期是否位于某个区间内,可以使用>=>=>
- 【LeetCode 热题100】 4. 寻找两个正序数组的中位数的算法思路及python代码
pljnb
LeetCode热题100算法leetcodepython
4.寻找两个正序数组的中位数给定两个大小分别为mmm和nnn的正序(从小到大)数组nums1和nums2。请你找出并返回这两个正序数组的中位数。算法的时间复杂度应该为O(log(m+n))O(log(m+n))O(log(m+n))。示例1:输入:nums1=[1,3],nums2=[2]输出:2.00000解释:合并数组=[1,2,3],中位数2示例2:输入:nums1=[1,2],nums2=
- 【LeetCode 876】链表的中间结点
菜鸭子
LeetCode算法LeetCode链表
题目描述:给定一个带有头结点head的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例1:输入:[1,2,3,4,5]输出:此列表中的结点3(序列化形式:[3,4,5])返回的结点值为3。(测评系统对该结点序列化表述是[3,4,5])。注意,我们返回了一个ListNode类型的对象ans,这样:ans.val=3,ans.next.val=4,ans.next.nex
- Leetcode 刷题笔记1 图论part01
平乐君
leetcode笔记图论
图论的基础知识:图的种类:有向图(边有方向)、无向图(边无方向)、加权有向图(边有方向和权值)度:无向图中几条边连接该节点,该节点就有几度;有向图中每个节点有入度和出度连通性:在无向图中,任何两个节点都是可以到达的,称之为连通图,否则称之为非连通图在有向图中,热河两个节点是可以相互到达的,称之为强连通图联通分量:在无向图中的极大连通子图称之为该图的一个连通分量强连通分量:有向图中极大强连通子图称之
- Leetcode刷题笔记1 图论part03
平乐君
leetcode笔记图论
卡码网101孤岛总面积fromcollectionsimportdequedirections=[[0,1],[1,0],[0,-1],[-1,0]]count=0defmain():globalcountn,m=map(int,input().split())grid=[]for_inrange(n):grid.append(list(map(int,input().split())))fori
- 二叉树练习
无敌粉毛大王千早爱音
力扣
102.二叉树的层序遍历-力扣(LeetCode)使用队列进行层序遍历。/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=val;}*TreeNode(intval,TreeNodelef
- 最长回文子串(暴力枚举、动态规划、中心扩展,leetcode刷题记录)
g-zh
LeetCode刷题记录动态规划leetcode算法
5.最长回文子串给你一个字符串s,找到s中最长的回文子串。示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。示例2:输入:s="cbbd"输出:"bb"提示:1maxLen&&isPalindrome(s,i,j)){//更新最长回文子串的起始位置和长度maxLen=currLen;start=i;}}}//返回最长回文子串returns.substr(star
- leetcode 20.有效括号
ranzhiyimu
leetcodepython算法
20.有效的括号-力扣(LeetCode)classSolution:defisValid(self,s:str)->bool:stack=[]foriins:ifiin('(','{','['):stack.append(i)elifiin(')'):#这种情况是栈弹出元素为空时候,右半部分的括号多出来一些比如:[()]}ifnotstack:returnFalsetemp=stack.pop(
- 代码训练营 day34|LeetCode 134,LeetCode 135,LeetCode 860,LeetCode 406
西几
代码训练营刷题记录leetcode算法c++
前言这里记录一下陈菜菜的刷题记录,主要应对25秋招、春招个人背景211CS本+CUHK计算机相关硕,一年车企软件开发经验代码能力:有待提高常用语言:C++系列文章目录第34天:第七章回溯算法part03`文章目录前言系列文章目录第34天:第七章回溯算法part03一、今日任务二、详细布置134.加油站提示:样例1:思路实战135.分发糖果提示:样例1:思路实战踩坑860.柠檬水找零提示:样例1:样
- leetcode day29 1005
星愿shining
leetcode算法数据结构
1005k次取反后最大化的数组和给你一个整数数组nums和一个整数k,按以下方法修改该数组:选择某个下标i并将nums[i]替换为-nums[i]。重复这个过程恰好k次。可以多次选择同一个下标i。以这种方式修改数组后,返回数组可能的最大和。示例1:输入:nums=[4,2,3],k=1输出:5解释:选择下标1,nums变为[4,-2,3]。示例2:输入:nums=[3,-1,0,2],k=3输出:
- 代码随想录算法训练营Day29 | Leetcode 134 加油站 Leetcode 135 分发糖果 Leetcode 860 柠檬水找零 Leetcode 406 根据身高重建队列
SPlutos
算法leetcode职场和发展
Leetcode134加油站题目链接:134.加油站-力扣(LeetCode)代码随想录题解:代码随想录(programmercarl.com)思路:局部最优:当前累加rest[i]的和curSum一旦小于0,起始位置至少要是i+1,因为从i之前开始一定不行。全局最优:找到可以跑一圈的起始位置。代码:classSolution{public:intcanCompleteCircuit(vector
- 【LeetCode】 五月打卡-day10
王六六同学
leetcode刷题#每日打卡题leetcode算法
1728.猫和老鼠II博弈知识介绍这道题是博弈问题,猫和老鼠都按照最优策略参与游戏。博弈问题中的三个概念:必胜状态、必败状态与必和状态。对于特定状态,如果游戏已经结束,则根据结束时的状态决定必胜状态、必败状态与必和状态。如果分出胜负,则该特定状态对于获胜方为必胜状态,对于落败方为必败状态。如果是平局,则该特定状态对于双方都为必和状态。从特定状态开始,如果存在一种操作将状态变成必败状态,则当前玩家可
- 【LeetCode】 五月打卡-day01
王六六同学
#每日打卡题leetcode算法java
必须拿下五月勋章2022.5.11305.两棵二叉搜索树中的所有元素中序遍历+归并排序中序遍历这两棵二叉搜索树,可以得到两个有序数组。然后可以使用双指针方法来合并这两个有序数组,这一方法将两个数组看作两个队列,每次从队列头部取出比较小的数字放到结果中(头部相同时可任取一个)。https://www.runoob.com/java/java-arraylist-sublist.htmlsubList
- leetcode day30 同构字符串
RickyGuo00
leetcode算法职场和发展
day30笔记1.题目描述2.代码构思(debug)1.题目描述2.代码构思(debug)classSolution:defisIsomorphic(self,s:str,t:str)->bool:s2t,t2s={},{}fora,binzip(s,t):#对于已有映射a->s2t[a],若和当前字符映射a->b不匹配,#说明有一对多的映射关系,则返回false;#对于映射b->a也同理ifai
- leetcode day30 去除重复字母
RickyGuo00
leetcode算法职场和发展
day30笔记1.题目描述2.代码构思(debug)1.题目描述2.代码构思(debug)classSolution:defremoveDuplicateLetters(self,s:str)->str:stack=[]seen=set()remain_counter=collections.Counter(s)forcins:ifcnotinseen:whilestackandc0:seen.d
- leetcode day30 134+135+860
星愿shining
leetcode算法
134加油站在一条环路上有n个加油站,其中第i个加油站有汽油gas[i]升。你有一辆油箱容量无限的的汽车,从第i个加油站开往第i+1个加油站需要消耗汽油cost[i]升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组gas和cost,如果你可以按顺序绕环路行驶一周,则返回出发时加油站的编号,否则返回-1。如果存在解,则保证它是唯一的。示例1:输入:gas=[1,2,3,4,5],cos
- LeetCode(977):有序数组的平方
慕洋男孩
LeetCode经典题leetcodec语言
有序数组的平方题目链接题目:给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。//暴力#includevoidsort(int*nums,intn){for(inti=0;inums[j]){inttemp=nums[i];nums[i]=nums[j];nums[j]=temp;}}}intmain(){intnums[]={-4,-1,0,3,
- (一)LeetCode热题100——哈希
三问走天下
#LeetCode热题100哈希算法leetcode散列表
1.两数之和题目来源给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。你可以按任意顺序返回答案。示例1:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。classSo
- 代码随想录Day22
好像也没那么热爱
算法训练营leetcodejava
Day22回溯算法part04LeetCode491.递增子序列题目描述给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以按任意顺序返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。示例输入:nums=[4,6,7,7]输出:[[4,6],[4,6,7],[4,6,7,7],[4,7],[4,7,7],[6,7
- 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