当前位置 : 主页 > 网络编程 > JavaScript >

JS单链表英语单词统计(列出所有单词及其出现次数)

来源:互联网 收集:自由互联 发布时间:2021-07-03
原创。 可以调用LinkedList类的方法orderInsert(),以字母大小的顺序储存英文字符串。 同时记录英文单词出现的次数 TheclassLinkedListallowsanapplicationtostorestringsinalphabeticalorder bycallingorderInsert()
原创。
可以调用LinkedList 类的 方法 orderInsert(), 以字母大小的顺序储存 英文字符串。 
同时记录 英文单词出现的次数
The class LinkedList allows an application to store strings in alphabetical order 
by calling orderInsert().  The frequency for each word is also provided.

1. [文件] linked_list_string_frequency.html ~ 2KB     下载(0)    

<html>
<head>
    <title>Linked List</title>
    <meta charset="utf-8">
</head>
<body>
<script type="text/javascript">

function Node(data) {  
        this.data = data; 
		this.frequency =1;
        this.next = null;  
            }  			
var SList =function SList() {  
        this.head = new Node("Dummy");  
            }  
SList.prototype.insertLast =function(data) {  
        var p = this.head;  
        while (p.next!=null) 
        p = p.next;
		p.next=new Node(data); 
        } 
SList.prototype.insertFirst =function(data) { 
		var p=new Node(data);  
        p.next = this.head.next;  
        this.head.next=p;
        } 
SList.prototype.traversal=function (){
	 var p=this.head;
	 while (p.next != null){
	 document.write( p.next.data + "("+p.next.frequency+"), ");
	 p = p.next;
	 }
 }
 
 SList.prototype.orderInsert =function(data) {  
 var k = this.search( data );
 if (k) k.frequency++;
 else {
		var p = new Node(data); 
        var q = this.head;  
        while (q.next!=null && q.next.data<data) 
        q = q.next;
		p.next=q.next;
		q.next=p;
 		} 
	}
 SList.prototype.search= function (data) {  
        var p = this.head;  
        while (p.data != data && p.next!=null) 
        p = p.next;
		if (p.data !=data)
        return null; 
		else
		return p; 
        } 
		
 var Slist = new SList();
 var s=new Array("earthquake","prediction","geology","physics",
 "chemistry","biology","mathematics","computer","earth_science",
 "chemistry","biology","mathematics","computer","paleomagnetism",
 "topology","biology","mathematics","computer","earthquake");
 for (var i=0; i<s.length; i++)
 Slist.orderInsert(s[i]);
 Slist.traversal(); 
</script>
</body>
</html>

2. [图片] linked_list_string_frequency.png    

网友评论