网页(页面)由三部分内容组成,分别是内容(结构)、表现、行为。
HTML通过标签来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容,如:文字如何处理,画面如何安排,图片如何显示等。
注:Java文件是需要先编译,再由Java虚拟机运行。但HTML文件不需要编译,直接由浏览器进行解析执行。
HTML代码不是很严谨。有时候标签不闭合,也不会报错。
北京欢迎你,有梦想谁都了不起! 北京欢迎你,为你开天辟地 流动中的魅力充满朝气。 北京欢迎你,在太阳下分享呼吸 北京欢迎你,像音乐感动你 让我们都加油去超越自己。把<br/>换行标签变成文本转换成字符显示在页面上。
h1显示的标题最大,h6显示的标题最小。
年年雪里,常插梅花醉, 挼尽梅花无好意,赢得满衣清泪! 今年海角天涯,萧萧两鬓生华。 看取晚来风势,故应难看梅花。
img标签是图片标签 , 用来显示图片。
src属性:设置图片的路径。
alt属性:设置当指定路径找不到图片时 , 用来代替图片显示的文本内容。
title属性:设置当鼠标放在图片上时,显示的文字。
width属性:设置图片的宽度。
height属性:设置图片的高度。
border属性:设置图片边框大小。
在JavaSE中路径也分为相对路径和绝对路径:
相对路径 : 从工程名开始算
绝对路径 : 盘符:/目录/文件名
在web中路径分为相对路径和绝对路径两种:
.表示当前文件所在的目录
…表示当前文件所在的上一级目录
文件名:表示当前文件所在目录的文件 , 相当于./文件名./可以省略。
块元素:无论内容多少,该元素独占一行。
行内元素:内容撑开宽度,左右都是行内元素的可以排在一行。
ifarme标签(内嵌窗口)可以在一个 html 页面上,打开一个小窗口,去加载一个单独的页面。
type属性可以修改列表项前面的符号;有三个值:
disc:实心圆点;默认
如果type指定值为none,前面的符号不显示。
type属性的值:1(默认)、a、A、i、I。
border属性:设置表格标签。
width属性:设置表格宽度。
height属性:设置表格高度。
align属性:设置表格相对于页面的对齐方式。
以上动画方法都可以添加参数。
1、第一个参数是动画 执行的时长,以毫秒为单位
2、第二个参数是动画的回调函数 (动画完成后自动调用的函数)
访问 Tomcat 下的 web 工程:只需要在浏览器中输入访问地址格式如下:
手拖 html 页面到浏览器和在浏览器中输入http://ip:端口号/工程名/的区别
手托 html 页面的原理:
输入访问地址访问的原因:
在浏览器地址栏中输入访问地址如下:
没有工程名的时候,默认访问的是 ROOT 工程。
当我们在浏览器地址栏中输入的访问地址如下:
建议修改 web 工程对应的 Tomcat 运行实例名称
确认 Tomcat 实例中有要部署运行的 web 工程模块
还可以修改 Tomcat 实例启动后默认的访问地址:
:顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。
顺序表可以分为静态顺序表和动态顺序表,静态较为简单,本文提供全部动态顺序表基本操作的代码。
顺序表的基本操作:
1、顺序表的构建 (采用结构体构建顺序表)代码如下:
3、顺序表的增,删,查,改,打印,求元素个数,销毁顺序表
顺序表的基本操作较为简单,来说说顺序表的优缺点:
原理:顺序表存储是将数据元素放到一块连续的内存存储空间,存取效率高,速度快。但是不可以动态增加长度
优点:存取速度高效,通过下标来直接存储
缺点:1.插入和删除比较慢,2.不可以增长长度
比如:插入或者删除一个元素时,整个表需要遍历移动元素来重新排一次顺序
链表:(单链表,双链表(无头单双链表,带头节点单双链表,循环单双链表))
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。
链表的基本操作:(本博文写出了单链表的基本操作)
单链表的增,删,查,改,打印,排序,逆置,销毁。
链表的优缺点:
原理:链表存储是在程序运行过程中动态的分配空间,只要存储器还有空间,就不会发生存储溢出问题
优点:插入和删除速度快,保留原有的物理顺序,比如:插入或者删除一个元素时,只需要改变指针指向即可
缺点:查找速度慢,因为查找时,需要循环链表访问
从它们的存储优缺点来看,各自有各自的使用场景,比如:频繁的查找却很少的插入和删除操作可以用顺序表存储,如果频繁的插入和删除操作很少的查询就可以使用链表存储
链表相关面试题:
删除一个无头单链表的非尾节点(不能遍历链表)
在无头单链表的一个节点前插入一个节点(不能遍历链表)
单链表排序(冒泡排序)
合并两个有序链表,合并后依然有序
查找单链表的中间节点,要求只能遍历一次链表
查找单链表的倒数第k个节点,要求只能遍历一次链表
删除链表的倒数第K个结点
判断单链表是否带环?若带环,求环的长度?求环的入口点?
判断两个链表是否相交,若相交,求交点。(假设链表不带环)
判断两个链表是否相交,若相交,求交点。(假设链表可能带环)【升级版】
分情况(1、不相交 2、相交不带环 3、相交带环(a、环内相交 b、环外相交) )
求两个已排序单链表中相同的数据。
顺序表存储位置是相邻连续的,可以随即访问的一种数据结构,一个顺序表在使
用前必须指定起长度,一旦分配内存,则在使用中不可以动态的更改。他的优点是访问数据是比较方便,可以随即的访问表中的任何一个数据,缺点是定义的长度不可更改造成存储空间的浪费。
链表是通过指针来描述元素关系的一种数据结构,他可以是物理地址不连续的物理空间。不能随即访问链表元素,必须从表头开始,一步一步搜索元素。它的优点是:对于数组,可以动态的改变数据的长度,分配物理空间。
在使用中如果一个数组在使用中,查询比较多,而插入,删除数据比较少,数组的长度不变时,选顺序表比较合理。如果插入,删除,长度不定的数组,可以选链表。
如果有哪些地方不清楚的可以私信我。
喜欢这篇文建就顺手推荐,方便大家看到