侧边栏壁纸
博主头像
乌拉队长博主等级

你只管努力,其余的交给命运

  • 累计撰写 129 篇文章
  • 累计创建 34 个标签
  • 累计收到 34 条评论

目 录CONTENT

文章目录

面试知识总结(一)

乌拉队长
2021-09-16 / 0 评论 / 0 点赞 / 1,031 阅读 / 2,343 字

面试知识总结

数据库相关

SQL通配符

image.png

交集、并集、差集

  • 交集(intersect)= {A∩B}:

    	# 示例代码
    	# 以下代码,返回同时存在于表A和表B中的记录,即:表A和表B的交集
    	select * from A
    	intersect
    	select * from B
    

    然而,MySQL并不支持intersect关键字,因此我们可以使用内联结inner join关键字来实现交集(注意:inner join和join是等价的)

  • 并集(union)= {A∪B}:
    union 和 union all的区别在于,union会去除重复的记录,而union all不会,这两个关键字MySQL均支持

  • 差集(minus 或 except)= {A - B}:
    minus 和 except都可以实现求差集运算,但是MySQL 中并不支持这两个关键字,然而,在MySQL中,可以使用外联结来实现相同的功能
    比如:
    要查询在表A而不在表B中的记录,可以用:

    	select * from A left join B using(id, name,age) where B.name=NULL;
    	# 上面语句等价于
    	select * from B right join A using(id,name,age) where B.name=NULL;
    

    上面查询中,using可以用on代替,例如:

    	select * from A left join B using(id, name,age) where B.name=NULL;
    	# 等价于以下表示
    	select * from A left join B on A.id=B.id and A.name=B.name and A.age=B.age where B.name=NULL;
    

    表示两个表中共有的字段,但是on的写法过于繁琐,因此一般都用using

SQL Server中where子句中,between A and B使用闭区间[A,B]

# 从表A中查询id>=4且id<=8的记录
select * from A where id between 4 and 8;

数据结构相关

四类基本逻辑结构
根据数据元素之间的关系,有四类基本逻辑结构分别是

  1. 集合结构:结构中的数据元素之间除了同属于一个集合的关系外,无其他版任何关系。
  2. 线性结构:结权构中的数据元素之间存在着一对一的线性关系。
  3. 树状结构:结构中的数据元素之间存在着一对多的层次关系。
  4. 图状结构或网状结构:结构中的数据元素之间存在着多对多的任意关系。

常见的4种数据存储结构

  1. 顺序存储结构:借助数据元素之间的相对位置来表示元素之间的逻辑结构.(vector动态数组、 deque双端队列、stack栈容器、queue队列容器)

  2. 链式存储结构:借助数据元素之间的元素的指针表示数组元素的逻辑结构.

  3. 散列存储结构:顺序存储+散列.

  4. 索引存储结构:顺序存储+索引.

广义表操作

GetHead是取广义表的第一个元素,要去掉一个"()",

GetTail是除掉第一个元素剩下的元素组成的广义表,也就是除掉第一个元素,再把剩余的元素"()"。

举个例子:

GetHead【((a,b),(c,d))】→(a,b)

GetHead【GetTail【((a,b),(c,d))】】→GetHead【((c,d))】→(c,d)

GetHead【GetTail【GetHead【((a,b),(c,d))】】】→GetHead【GetTail【(a,b)】】→GetHead【(b)】→b

GetTail【GetHead【GetTail【((a,b),(c,d))】】】→GetTail【GetHead【((c,d))】】→GetTail【(c,d)】→(d)

原文:广义表中 GetHead() 和 GetTail()


计算机网络相关

小知识

  • 网卡实现的主要功能是数据的封装与解封、链路管理、编码与译码。
  • 双绞线最长传输距离为100米,超过100米的话就需要使用中继器
  • TCP/IP工作在传输层,ICMP工作在网络层,ICMP是TCP/IP的一个子协议
  • 计算机网络中常用的三种有线传输介质是:双绞线、同轴电缆、光纤

IP地址的分类和各自范围

  1. 类IP地址

    一个A类IP地址是指, 在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。A类IP地址中网络的标识长度为8位,主机标识的长度为24位,A类网络地址数量较少,有126个网络,每个网络可以容纳主机数达1600多万台。

    A类IP地址 地址范围1.0.0.1到127.255.255.254。

  2. B类IP地址

    一个B类IP地址是指,在IP地址的四段号码中,前两段号码为网络号码。B类IP地址中网络的标识长度为16位,主机标识的长度为16位,B类网络地址适用于中等规模的网络,有16384个网络,每个网络所能容纳的计算机数为6万多台。

    B类IP地址地址范围128.0.0.1-191.255.255.254。

  3. C类IP地址

    一个C类IP地址是指,在IP地址的四段号码中,前三段号码为网络号码,剩下的一段号码为本地计算机的号码。C类IP地址中网络的标识长度为24位,主机标识的长度为8位,C类网络地址数量较多,有209万余个网络。适用于小规模的局域网络,每个网络最多只能包含254台计算机。

    C类IP地址范围192.0.0.1-223.255.255.254。

  4. D类IP地址

    D类IP地址在历史上被叫做多播地址,即组播地址。在以太网中,多播地址命名了一组应该在这个网络中应用接收到一个分组的站点。多播地址的最高位必须是“1110”,范围从224.0.0.0到239.255.255.255。

  5. E类IP地址

    E类IP地址中是以“11110”开头,E类IP地址都保留用于将来和实验使用。

C/C++相关

各种数据类型占用字节数

  • int: 4字节
  • float: 4字节
  • double: 8字节
  • char: 8字节
0

评论区