编程与逻辑问题解析
1. 矩形重叠判断
1.1 函数实现
通过一系列规则,可得到用于判断两个矩形是否重叠的函数:
boolean overlap( Rect a, Rect b){
return( a.ul.x <= b.lr.x &&
a.ul.y >= b.lr.y &&
a.lr.x >= b.ul.x &&
a.lr.y <= b.ul.y );
}
1.2 条件验证
该函数判断两个矩形重叠的条件如下:
- A 的左边缘在 B 的右边缘左侧。
- A 的上边缘在 B 的下边缘上方。
- A 的右边缘在 B 的左边缘右侧。
- A 的下边缘在 B 的上边缘下方。
这些条件意味着矩形 B 不可能在矩形 A 之外,所以必然存在重叠,此逻辑合理。
2. 大小端字节序判断
2.1 大小端字节序概念
- 字节序指计算机存储多字节值时字节的顺序。现代计算机大多用多字节序列表示基本数据类型,如整数通常为 4 字节。
- 字节在整数中的排列顺序通常有两种:从最低有效字节(LSB)到最高有效字节(MSB),或从 MSB 到 LSB。
- 在大端字节序机器中,MSB 地址最低;在小端字节序机器中,LSB 地址最低。例如,大端字节序机器存储 2 字节十六进制值 A45C 时
超级会员免费看
订阅专栏 解锁全文


被折叠的 条评论
为什么被折叠?



