Skip to main content

This time Queues with Linked Lists

Same as the earlier posts Here's the implementation.

Node Class


1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
public class NodeClass {
    public int info; 
    public NodeClass next; 
    public NodeClass(int i){    
        this(i,null);
    }
    public NodeClass(int x, NodeClass n){
        info = x;
        next = n;
    }

}


The implementation:


1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class QueueWithLL {
    protected NodeClass head, tail;

    public QueueWithLL() {
        head = tail = null;
    }
    public boolean isEmpty(){
        return(head == null && tail == null);
    }
    public void add(int x){
        if(isEmpty()){
            head = tail = new NodeClass(x);
        }else{
            tail.next = new NodeClass(x, null);
            tail = tail.next;
        }
    }
    public int peekFront(){
        return head.info;
    }
    public int peekRear(){
        return tail.info;
    }
    public int pop(){
        int temp = head.info;
        head = head.next;
        return temp;
    }
    public static void main(String[] args) {
        QueueWithLL queue = new QueueWithLL();
        queue.add(34);
        queue.add(45);
        queue.add(78);
        queue.add(100);
        System.out.println("Head peek :"+queue.peekFront());
        System.out.println("Rear peek :"+queue.peekRear());        
        System.out.println("Pop the head element :"+queue.pop());
        System.out.println("Pop the next head element :"+queue.pop());
    }
    
}

Have fun.

Popular posts from this blog

Natural Language Processing with Python NLTK part 5 - Chunking and Chinking

Natural Language Processing Using regular expression modifiers we can chunk out the PoS tagged words from the earlier example. The chunking is done with regular expressions defining a chunk rule. The Chinking defines what we need to exclude from the selection. Here are list of modifiers for Python: {1,3} = for digits, u expect 1-3 counts of digits, or "places" + = match 1 or more ? = match 0 or 1 repetitions. * = match 0 or MORE repetitions $ = matches at the end of string ^ = matches start of a string | = matches either/or. Example x|y = will match either x or y [] = range, or "variance" {x} = expect to see this amount of the preceding code. {x,y} = expect to see this x-y amounts of the preceding code source: https://pythonprogramming.net/regular-expressions-regex-tutorial-python-3/ Chunking import nltk from nltk.tokenize import word_tokenize # POS tagging sent = "This will be chunked. This is for Test. World is awesome. Hello world....

Natural Language Processing with Python NLTK part 1 - Tokenizer

Natural Language Processing Starting with the NLP articles first we will try the  tokenizer  in the NLTK package. Tokenizer breaks a paragraph into the relevant sub strings or sentences based on the tokenizer you used. In this I will use the Sent tokenizer, word_tokenizer and TweetTokenizer which has its specific work to do. import nltk from nltk.tokenize import sent_tokenize, word_tokenize, TweetTokenizer para = "Hello there this is the blog about NLP. In this blog I have made some posts. " \ "I can come up with new content." tweet = "#Fun night. :) Feeling crazy #TGIF" # tokenizing the paragraph into sentences and words sent = sent_tokenize(para) word = word_tokenize(para) # printing the output print ( "this paragraph has " + str(len(sent)) + " sentences and " + str(len(word)) + " words" ) # print each sentence k = 1 for i in sent: print ( "sentence ...

Natural Language Processing with Python NLTK part 6 - Named Entity Recognition

Natural Language Processing - NER Named entities are specific reference to something. As a part of recognizing text NLTK has allowed us to used the named entity recognition and recognize certain types of entities. Those types are as follows NE Type Examples ORGANIZATION Georgia-Pacific Corp. ,  WHO PERSON Eddy Bonte ,  President Obama LOCATION Murray River ,  Mount Everest DATE June ,  2008-06-29 TIME two fifty a m ,  1:30 p.m. MONEY 175 million Canadian Dollars ,  GBP 10.40 PERCENT twenty pct ,  18.75 % FACILITY Washington Monument ,  Stonehenge GPE South East Asia ,  Midlothian Source:  http://www.nltk.org/book/ch07.html Simple example on NER: import nltk from nltk.tokenize import word_tokenize, sent_tokenize para = " America is a country. John is a name. " sent = sent_tokenize(para) for s in sent: word = word_tokenize(s) tag = nltk . pos_tag(word) n...