数据结构 b站 学习笔记(一)"/>
数据结构 b站 学习笔记(一)
将实际问题转化成计算机编程问题
例题一:有100瓶饮料,其中一瓶有毒,喝完有毒饮料后,2小时后出现不适症状,并且会持续20分钟。现需志愿者若干名,以身试毒,问最少需要志愿者多少名才能找出有毒饮料。
抽象 1.先对饮料进行编号,这里采用二进制。
如第29瓶饮料编号为0011101,第100瓶饮料的编号为1100100。
PS:十进制转化为二进制的计算如图
2.需要编号为1,2,3,4,5,6,7的7名志愿者,如试喝第29瓶饮料即编号为0011101的志愿者是3,4,5,7号志愿者,最后,如果是3,4,5,7号志愿者出现症状,则是29号饮料有毒。
Tips:主要是用中毒的志愿者组合表示有毒饮料,用二进制编号易于表示以及处理。
更多推荐
数据结构 b站 学习笔记(一)
发布评论