如何设计一个购物车

系统设计 , , ,
答案 未登陆时,新增产品放在本地浏览器的Cookie中。 登陆时,同步购物车数据到服务器,同步完成后删除本地Cookie。 已经登陆状态,新增产品直接添加到服务器。 对于服务器数据保存的位置,访问量不大就直接存储在MySQL,访问量大就以集合方式存储在Redis,速度快又能保证唯一。 因为Redis数据…

数组和hash表的区别是什么?

答案 数组是编程语言提供的一种数据类型,即用一组连续的内存空间来存放数据,可以通过一个首地址,和一个数组下标,直接访问这组内存空间中的任意位置。 哈希表是数据结构这门学科中的概念,是以数组为存储方式,实现的一种可以快速查找数据的数据结构。它是将数据的值通过一个映射函数(也…

什么是哈希表/散列表?

数据结构 , ,
答案 散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。 也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。 这个映射函数称做散列函数,存放记录的数组称做散列表。