今天我去书店,正在吹水的时候,一MM(书店店员)过来说,你电脑很厉害是吧,我问你一下,如果我想知道这本书是不是本书店唯一的,用什么方法快速确定呢?我说简单,把所有书的数据录入到数据库中,再把书名或ISBN拿进去比对一下就出来了。她说,这样不就是把整库的书全部比较一次,如果这本书正排在最后的话?我说是呀,否则还能怎样?结果他说,我是问你呀,你电脑不是很厉害吗,你说说看呀。巨郁闷,看她神情她应该有更好的办法,可是我问过她好几次,她就是不告诉我,所以在这里向各位请教,有没有什么更好的方法。以下是我想到的:
 1.在书店里大叫一声,谁负责区里有XXX书呀?如果没有回答或回答没有就是唯一的。(怎么那么像UDP?)
 2.只能录入所有书的资料(ISBN),然后一个个查找。不管用文本文件,XML,还是数据库,起码要比对到出现两本书的时候才能停,否则要比寻完整库的图书。
 3.给2中的数据库建索引,然后……晕,还是用select去查找。

解决方案 »

  1.   

    应该是看上你了如果一个店员懂得这么多的话,应该也呆在书店了小心看上你了啦不过看来你还蛮乐意
    祝福ing
      

  2.   

    ok,楼上的说的有道理,肯定对你了解了很多才这么说的,要么怎么知道你电脑和厉害啊,笨哦,mm对你暗中观察了那么久还不知道
      

  3.   

    如果用编程解决问题,用映射表类CMapStringToPtr或CMapStringToString登记书名资料,这样只需要一次搜索
      

  4.   

    回复人: alanblack() ( ) 信誉:100  2005-09-17 00:21:00  得分: 0  
     
     
       貌似可以用hash表
      
     
    这个我也想过,只是这个跟数据库做索引比,谁更优秀呢?
      

  5.   

    书名和ISBN号只能定位到书名,而同一种书,是有很多的,比如:这次印了30000册,那这30000册的ISBN号与书名都是一样的。书店的书,就是用最笨的算法,电脑也能快到比人的反应快,找出来,何必考虑什么最优算法,要找的话,翻翻数据结构书,就出来了。同意各位的说法,找个时间,机会(不用找了,MM主动为你提供了一个机会),以探讨最优算法的借口约她出来,然后 ,,,,,,,,幸福的生活在一起,,,,像童话了哈
      

  6.   

    qufo(1)(飞)(如果后面没有出现<%Script,则表示入侵成功) 这个我也想过,只是这个跟数据库做索引比,谁更优秀呢?这个就不知道了,不过MM问一下而已,没有必要这样深究吧羡慕楼主,要走桃花运了
      

  7.   

    晕,我是本着实事求是的原则在研究这个问题的。
    泡这个妞?太强的女人镇不住的,再说大部分男生潜意识里都不太喜欢女强人吧。回复人: metababy(花生) 所说ISBN是可以重复,不如直接录入书籍资料,边录边找?ISBN出现两次即可得此书在本店有重复。
      

  8.   

    回复人: 2008cheung(张俊风) ( ) 信誉:100  2005-9-17 17:45:36  得分: 0  
     
     
       
    你们都是花痴!!!书店进货肯定有个数目,是不是?
    如果卖剩最后一本不就是唯一的吗?
    这是简单的进销存啊!!!祝各位中秋多多艳遇吧!!!  
     
    关键是如何知道书店仅剩一本呢?
      

  9.   

    "泡这个妞?太强的女人镇不住的,再说大部分男生潜意识里都不太喜欢女强人吧。"
    很惊奇,一个书店MM=女强人这个问题根本不是排序查找问题,她的意思是区分出那些带书进来的人
    正确回答:进货时,书背后贴上该店的特有标签
    另外不知同样ISDN的书其封底的扫描码是否一样,但估计应该是一样的
      

  10.   

    作程序员的脑袋就是愚钝,什么问题都想到技术上来,还满认真地
    其实就象大家说地,MM是醉翁之意不在酒啦,要不咋不找我哪
    笨笨,你随便搞个方法再去会会MM,争取晚上就................
      

  11.   

    看LZ标题,再看内容就知道楼猪 是进来臭显的,说不定现在就抱着MM乐呢
      

  12.   

    录入数据库 没有顺序的
    select count(1) from tb where isbn='xxx'
    不会有什么排在前 排在后的
      

  13.   

    你到GOOGLE或者百度中搜索RFID,看看能不能解决你的问题
      

  14.   

    只要ISBN是有序排列用二分法最快啦
      

  15.   

    注意他说的话这样不就是把整库的书全部比较一次,如果这本书正排在最后的话?分析一下,mm的意思主要集中在优化算法,提升速度方面,并不是楼主所说的还有别的方法
    比较是肯定需要的拉,不过偶实在想不出来还有什么更好滴算法
    要是用c++,可能速度能快一些,自己写数据库引擎,速度或许能提升一点(有针对性的)
    建立内存映射,再提高一些速度。
    还有在录入的时候加大工作量,查找的时候就能更快,输入更多书的信息。
    建议楼主去买一本关于数据库核心内容的书看看,研究一下数据库系统是如何检索资料滴
    嘿嘿
      

  16.   

    楼主,你是傻子啊,那MM分明看上你了
    还怎么查找
    问MM啊》》kiss!!!!!!!!!!!!!!!!如果是技术上的
    我看可以根据ISBN,其前几们是出版社编号,后面不详,所以不用一本本的查了
    只找与它有相同的...........
    还有就是不知中图分类法可用否???
      

  17.   

    还是觉得不对,明明她有更好的方法,而且,她并不是我最喜欢的那种style
      

  18.   

    我看是楼主吃错药了。数据库里应该是保存书的ID及库存量,当然还有价格、销售量等等其他信息不过现在用不着,只要跟据书的 ID 找到书的纪录,看看库存量是不是等于1就知道了。如何才能快速找到那条记录,那是数据库引擎的性能问题,与数据库的使用者无关。我也不明白楼主要一条一条地比较个什么劲。结论只能是楼主吃错药了。
      

  19.   

    同意icansaymyabc(学习与进步)
      

  20.   

    看谁敢不让我路过!!
    ----带了一军队。。CSDN不能贴图,真不过瘾
      

  21.   

    看谁敢不让我路过!!
    ----带了一军队。。CSDN不能贴图,真不过瘾