
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Found 282 Articles for Data Structure Algorithms

3K+ Views
ProblemConstruct deterministic Finite automata (DFA) whose language consists of strings with alternate 0’s and 1’s over an alphabet ∑ ={0, 1}.SolutionIf Σ = {0, 1} (ε + 1)(01)* (ε + 0) is the set of strings that alternate 0’s and 1’s Another expression for the same language is (01)*+ 1(01)*+ (01)*0+ 1(01)*0.The strings the given language generates are as follows −If no input is either 0 or 1 then it generates {ε} .String starts with 0 and followed by 1 = {0101…}.String starts with 1 followed by 0 ={101010….. }So, based on string generation it is clear the strings are ... Read More

9K+ Views
AlgorithmStep 1 - Read the leftmost ‘0’ replace it by ‘x’ and move right to process the immediate symbol after ‘#’.Step 2 - Replace the symbol ‘0’ by x and move right reach the first ‘B’ after ‘#’Step 3 - Replace B by ‘0’ and move left until the nearest ‘x’ is reachedStep 4 - Replace the ‘x’ by 0 and move right to process the next symbol of the multiplicand.Step 5 - Perform steps 2, 3 and 4 until all the symbols of the multiplicand are processed.Step 6 - Move left to replace the symbol of the multiplier, ‘x’ ... Read More

10K+ Views
The unary input number n is represented with a symbol 0 n – times.Example4 → 00001 → 05 → 00000The separation symbol, „#‟ (any other special character) shall be used to distinguish between two or more inputs.For Example: 5, 2 are the inputs represented by 00000 # 00.AlgorithmStep 1 - Read the symbols of the first input with no replacements and move right.Step 2 - When the symbol = ‘#’, replace it by ‘0’ and move right.Step 3 - Traverse right side until the rightmost ‘0’ (left to B – last symbol)Step 4 - Replace the rightmost ‘0’ by BStep ... Read More

6K+ Views
Before understanding the differences between the finite automata (FA) and the turing machine (TM), let us learn about these concepts.Finite AutomataFinite automata is an abstract computing deviceIt is a mathematical model of a system with discrete inputs, outputs, states and set of transitions from state to state that occurs on input symbol from alphabet ΣFinite Automata RepresentationFA can be represented as following in the theory of computation (TOC) −Graphical (Transition diagram)Tabular (Transition table)Mathematical (Transition function)Formal definition of Finite AutomataA Finite automata is a five tuplesM=(Q, Σ, δ, q0, F)Where, Q − Finite set called statesΣ − Finite set called alphabetsδ ... Read More

16K+ Views
ProblemDesign deterministic finite automata (DFA) with ∑ = {0, 1} that accepts the languages ending with “01” over the characters {0, 1}.SolutionThe strings that are generated for a given language are as follows −L={01, 001, 101, 110001, 1001, ……….}The minimum length of the string is 2, the number of states that the DFA consists of for the given language is: 2+1 = 3 states.Here, q0 − On input 0 it goes to state q1 and on input 1 it goes to itself.q1 − On input 0 it goes to itself and on input 1 it goes to State q2.q2 − ... Read More

25K+ Views
AlgorithmStep 1 - If there is no input, reach the final state and halt.Step 2 - If the input = “a‟, then traverse forward to process the last symbol = “a‟. Convert both a‟s to B‟.Step 3 - Move left to read the next symbol.Step 4 - If the input = “b‟, replace it by B and move right to process its equivalent “B‟ at the rightmost end.Step 5 - Convert the last ’b’ to ‘B’.Step 6 - Move left and process step 2 – 5 until there are no more inputs to process.Step 7 - If the machine reaches ... Read More

2K+ Views
Firstly, let us learn about the infinite language and then understand how to construct the finite and infinite language in the theory of computation (TOC).Infinite languageThere is no bound on the length of any strings in an infinite language.There is no bound on any number of derivation steps used to derive the strings also.For example, if the grammar has n productions, then any derivation consisting of n + 1 steps uses some production twice.If the language is said to be infinite, then some production or sequence of productions must be used repeatedly to construct the derivationsExampleThe infinite language {anb | ... Read More

1K+ Views
Type 2 grammars are context free grammars (CFG).All productions are of the form −A → x — where A is nonterminal, x is a string of nonterminal and terminals, A context-free grammar is equivalent to a pushdown automaton (PDA) and to context free languages.Example − Pushdown Automaton (PDA)PropertiesA grammars, G = (V, T, P, S) is said to be context free if the production rule is of the form, A → α .The transition allows A → ε [i.e., α → ε] where, A is a non terminal symbol α is any terminal or non-terminal symbol.Here, the left hand side of ... Read More

767 Views
AlgorithmStep 1: Process the leftmost „a‟ and replace it by „x‟.Step 2: Move right until the leftmost „b‟ is reached. Replace it by „y‟.Step 3: Move right until the leftmost „c‟ is reached. Replace it by „z‟.Step 4: Move left to reach the leftmost „a‟ and perform steps 1, 2 and 3 (n – 1) times.Step 5: Halt if there are „n‟ number of x, y, z.Turing Machine for the given language is as follows −The Turing machine, M is given by M = (Q, Σ, Γ, δ, q0, B, F)Where, Q = {q0, q1, q2, q3, q4, q5}Σ = ... Read More

4K+ Views
The set of all strings (over terminal symbols) which can be derived from the start symbol is the language generated by the grammar G.Example 1Let grammar G be defined by the set of terminals T = {a, b}, the only non-terminal start symbol S and the set of production rules. Hence, the grammar G would be as follows −S → ∧, S → aSbOr in shorthand, it is as mentioned below −S → ∧ | aSbL(G) = {∧, ab, aabb, aaabbb, . . . }DefinitionIf G is called as a grammar with start symbol S and set of terminals T, ... Read More