Java数据结构梳理
[TOC]
线性结构
线性结构特点
线性结构为最常用的数据结构,其特点是数据元素均为一对一的结构特点,即一个元素最多只有唯一后继,有且只有唯一前驱
线性结构有两种存储结构:
顺序存储(数组) ---> 物理位置和逻辑位置是连续的
链式存储(链表) ---> 物理位置不是连续的
线性结构对于检索的效率很低【数组,链表】
稀疏数组
稀疏数组介绍:当一个数组的大部分元素为0或为同一个值时,则若全部记录只会造成存储的数据大量的冗余,此时可以采用稀疏数组的存储方式进行存储
稀疏数组的处理方法:
记录数组中不同值的个数以及数组的行数和列数
将不同值元素的行列值记录在一个表内,从而缩小数组的规模
```java package
LinearStruct;
import java.io.FileInputStream; import java.io.FileNotFoundException;
import java.io.FileOutputStream; import java.io.IOException; import
java.io.ObjectInputStre ...
Python爬虫理论
铺垫内容
爬虫分类
通用爬虫:
抓取系统重要组成部分
聚焦爬虫:
建立在通用爬虫的基础之上
抓取的为抓取页面局部内容
增量式爬虫:
检测网站中数据的更新情况
反爬机制
门户网站,可以通过指定相应的策略,防止爬虫程序进行数据的窃取
反反爬策略:破解反爬策略,获取数据
相关协议
robots.txt 协议:
君子协议。规定了网站中哪些数据可以被爬取,哪些不可以被爬取
http协议:
常用客户端与服务器的通信协议
常用请求头信息:
user-Agent:请求载体的身份标识
connection:请求完毕后是断开连接还是保持连接
常用响应头信息:
content-type:服务器相应客户端的数据类型
https协议:
安全的超文本传输协议
加密方式:
对称密钥加密: 密文和密钥均由客户机发送给服务器
缺陷:密钥和密文可能会被中间机构拦截
非对称密钥加密: 密文由客户机发送给服务器
密钥由服务器发送给客户机
缺陷:不能保证客户机拿到的密钥一定由服务器提供
证书密钥加密(https): 由第三方认证机制进行密钥防伪认证
requests模块
req ...
计算机网络学习笔记
[TOC]
第一章 计算机网络相关概念
基本概念
计算机网络:是一个将分散的,具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的
计算机网络是互联的
,自治的计算机集合:
互联:计算机系统之间是相互连通的
自治:计算机系统之间没有主从关系
计算机网络的功能:
数据通信(连通性)
资源共享(硬件,软件,数据)
分布式处理
提高可靠性
负载均衡
计算机网络的组成
基本组成部分
硬件
软件
协议
工作方式
边缘部分:用户直接使用的部分:
C/S
P2P
核心部分:为边缘部分服务,包括路由器及相关的网络
功能组成
通信子网:实现数据通信
资源子网:实现资源共享、数据处理
计算机网络的分类
按分布范围来分:
广域网(WAN)----- > 交换技术
城域网(MAN)
局域网(LAN)------ > 广播技术
个人区域网(PAN)
按使用者来分
公用网
专用网:政府,军队...
按交换技术来分:
电路交换
报文交换
分组交换
按拓扑结构来分:
总线型
星型
环型
网状型
按传输技术来分:
...