From 18570dfbcecac5973158241f3caf9dd69b4ef795 Mon Sep 17 00:00:00 2001 From: Jidong Xiao Date: Mon, 6 Nov 2023 00:05:18 -0500 Subject: [PATCH] adding the phone book diagram --- lectures/20_hash_tables_I/phonebook.png | Bin 0 -> 18444 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 lectures/20_hash_tables_I/phonebook.png diff --git a/lectures/20_hash_tables_I/phonebook.png b/lectures/20_hash_tables_I/phonebook.png new file mode 100644 index 0000000000000000000000000000000000000000..cc3b9e8ed7844a5d716e6ec353a7113ea263a144 GIT binary patch literal 18444 zcmZs@WmFu|wk}F=*9IDQcXxLS?gZE15?q2b?h@P~I3YL$cMA}L26qVV4zIHJx#zt* z#{1FD=s{7`s#6x8Uh6qn$q8`2zVJQ~FNs?fYJNcLDi#KB-_lHF}UDsr0idGDPwL3Kt$3 zq5;K-3PLW0(gFj&c~{P^MxP3;W>%m^4_DA9UZ{pF4hfbl1bs$^fk-lZHj)*krJ*tV z{Z++Z2`uP!ib_RA)g@D?c1f8|Dy61|`Gv(WJT?|J)A{1!BIm%U)g}0i8yS*J)^-hM z{m>q^9{7Z|w6xSA!z�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 wXg<|We0|UzL}Q*fL-G+dG}Q2f`G>velXd1