博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
野生前端的数据结构基础练习(4)——字典
阅读量:6774 次
发布时间:2019-06-26

本文共 1099 字,大约阅读时间需要 3 分钟。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

网上的相关教程非常多,基础知识自行搜索即可。

习题主要选自Orelly出版的《数据结构与算法javascript描述》一书。

参考代码可见:

字典的基本知识

键值对形式存储数据的数据结构,在Javascript中更多地是直接使用对象,一般只在有排序需求的场景下会用到本篇中构造的Dictionary类,因为对象属性是无序的。

字典的应用

字典在Javascript中是非常常用的技术之一,一般会和设计模式中的策略模式一起被提及。策略模式指的是定义一系列的算法,把它们一个个封装起来。将不变的部分和变化的部分隔开是每个设计模式的主题,策略模式也不例外,策略模式的目的就是将算法的使用与算法的实现分离开来。例如下面一段计算薪水和奖金的示例:

var obj = {        "A": function(salary) {            return salary * 4;        },        "B" : function(salary) {            return salary * 3;        },        "C" : function(salary) {            return salary * 2;        } };var calculateBouns =function(level,salary) {    return obj[level](salary);};console.log(calculateBouns('A',10000)); // 40000

基本练习

构造一个Dictionary类。实现下列基本方法

  • add(key, value)——添加一条记录
  • find(key)——查找指定键对应的值
  • remove(key)——移除指定键值对
  • showAll( )——显示所有键值对
  • clear( )——清空数据

课后习题(书中第七节习题)

  1. 写一个程序,该程序从文本读入名字和电话号码,然后将其存入一个字典,程序包含如下功能:显示单个电话号码,显示所有电话号码,增加新的电话号,删除电话,清空所有电话。
  2. 使用Dictionary类写一个程序,用来统计一段文本中各个单词出现的次数。例如,"the brown for jumped over the blue fox",对应的输出为:
the:2brown:1fox:2jumped:1over:1blue:1
  1. 修改练习2,使单词按字母顺序显示。

转载于:https://www.cnblogs.com/dashnowords/p/9880013.html

你可能感兴趣的文章
旷视Face++与西交大成立AI联合实验室,郑南宁孙剑再续师徒缘
查看>>
《深入理解计算机系统(修订版)》读感
查看>>
Linux下如何使用虚拟用户增加FTP的安全性
查看>>
为了学习WinCE嵌入式编程,又开始学起了MFC
查看>>
[RHEL5企业级Linux服务攻略]--第2季 Samba服务全攻略
查看>>
JSP和ASP.NET到底谁才是未来的主宰
查看>>
Goldengate双向复制配置
查看>>
CSS魔法堂:盒子模型简介
查看>>
忘记电商 刘强东和京东的“如意算盘”
查看>>
Oracle多实例的配置方法
查看>>
浅谈hibernate+入门实例
查看>>
Linux on Power 上的调试工具和技术
查看>>
Android系统移植与调试之------->如何添加一个adb wifi无线调试的功能【开发者选项】-【Wifi调试】...
查看>>
linux 防火墙操作
查看>>
Ubuntu中修改grub重启出现 Memtest86 解决方法
查看>>
VS 2012 标配 Asp.net MVC 和 Entity Framework - mybatisnet 可能就显得路子野 了
查看>>
kafka_java
查看>>
阿里云推出企业级智能协同办公方案 云桌面、云AP、云客服一应俱全
查看>>
安全性对于物联网在云端的应用至关重要
查看>>
背水一战 Windows 10 (20) - 绑定: DataContextChanged, UpdateSourceTrigger, 对绑定的数据做自定义转换...
查看>>