zoukankan      html  css  js  c++  java
  • Javascript实现HashTable类

    散列算法可以尽快在数据结构中找出指定的一个值,因为可以通过Hash算法求出值的所在位置,存储和插入的时候都按照Hash算法放到指定位置。

    <script>
    
    function HashTable() {
    	this.table = [];
    }
    
    //loselose散列函数
    HashTable.prototype.loseloseHash = function(str){
    	var hash = 0;
    	for(var i=0; i<str.length; i++){
    		hash += str.charCodeAt(i);
    	}
    	return hash;
    }
    
    //增加/更新 散列表
    HashTable.prototype.put = function(key,value){
    	this.table[this.loseloseHash(key)] = value;
    	return this.loseloseHash(key);
    }
    
    //删除散列表一个值
    HashTable.prototype.remove = function(key){
    	this.table[this.loseloseHash(key)] = undefined;
    }
    
    //获取散列表的一个值
    HashTable.prototype.get = function(key){
    	return this.table[this.loseloseHash(key)];
    }
    
    var hashtable = new HashTable();
    console.log(hashtable.put('Zhangsan','zhangsan@gmail.com')); //826
    console.log(hashtable.put('Jay','jay@foxmail.com')); //292
    console.log(hashtable.put('Ken','ken@126.com'));  //286
    console.log(hashtable.get('Jay')); //jay@foxmail.com
    hashtable.remove('Jay');
    console.log(hashtable.get('Jay')); //undefined
    </script>
    
  • 相关阅读:
    Mysql字段约束
    MYSQL中数据类型介绍
    Redis常见的几种使用方式及其优缺点
    python解析jason串,数据存入数据库
    redo log
    Oracle控制文件(Control Files)
    笔记
    redis面试题
    mysqldump备份
    超简单的内网穿透技巧(使用花生壳进行内网穿透)
  • 原文地址:https://www.cnblogs.com/jaychan/p/5976429.html
Copyright © 2011-2022 走看看