30-days learning plan to master Data Structures and Algorithms (DSA) and prepare for coding interviews.
### Week 1: Foundations and Basic Data Structures
Day 1-3: Arrays and Strings
- Topics to Cover:
- Array basics, operations (insertion, deletion, searching)
- String manipulation
- Two-pointer technique, sliding window technique
- Practice Problems:
- Two Sum
- Maximum Subarray
- Reverse a String
- Longest Substring Without Repeating Characters
Day 4-5: Linked Lists
- Topics to Cover:
- Singly linked list, doubly linked list, circular linked list
- Common operations (insertion, deletion, reversal)
- Practice Problems:
- Reverse a Linked List
- Merge Two Sorted Lists
- Remove Nth Node From End of List
Day 6-7: Stacks and Queues
- Topics to Cover:
- Stack operations (push, pop, top)
- Queue operations (enqueue, dequeue)
- Applications (expression evaluation, backtracking, breadth-first search)
- Practice Problems:
- Valid Parentheses
- Implement Stack using Queues
- Implement Queue using Stacks
### Week 2: Advanced Data Structures
Day 8-10: Trees
- Topics to Cover:
- Binary Trees, Binary Search Trees (BST)
- Tree traversal (preorder, inorder, postorder, level order)
- Practice Problems:
- Invert Binary Tree
- Validate Binary Search Tree
- Serialize and Deserialize Binary Tree
Day 11-13: Heaps and Priority Queues
- Topics to Cover:
- Binary heap (min-heap, max-heap)
- Heap operations (insert, delete, extract-min/max)
- Applications (heap sort, priority queues)
- Practice Problems:
- Kth Largest Element in an Array
- Top K Frequent Elements
- Find Median from Data Stream
Day 14: Hash Tables
- Topics to Cover:
- Hashing concept, hash functions, collision resolution (chaining, open addressing)
- Applications (caching, counting frequencies)
- Practice Problems:
- Two Sum (using hash map)
- Group Anagrams
- Subarray Sum Equals K
### Week 3: Algorithms
Day 15-17: Sorting and Searching Algorithms
- Topics to Cover:
- Sorting algorithms (quick sort, merge sort, bubble sort, insertion sort)
- Searching algorithms (binary search, linear search)
- Practice Problems:
- Merge Intervals
- Search in Rotated Sorted Array
- Sort Colors
- Find Peak Element
Day 18-20: Recursion and Backtracking
- Topics to Cover:
- Basic recursion, tail recursion
- Backtracking (N-Queens, Sudoku solver)
- Practice Problems:
- Permutations
- Combination Sum
- Subsets
- Word Search
Day 21: Divide and Conquer
- Topics to Cover:
- Basic concept, merge sort, quick sort, binary search
- Practice Problems:
- Median of Two Sorted Arrays
- Pow(x, n)
- Kth Largest Element in an Array (using divide and conquer)
- Maximum Subarray (using divide and conquer)
### Week 4: Graphs and Dynamic Programming
Day 22-24: Graphs
- Topics to Cover:
- Graph representations (adjacency list, adjacency matrix)
- Traversal algorithms (DFS, BFS)
- Shortest path algorithms (Dijkstra's, Bellman-Ford)
- Practice Problems:
- Number of Islands
Day 25-27: Dynamic Programming
- Topics to Cover:
- Basic concept, memoization, tabulation
- Common problems (knapsack, longest common subsequence)
- Practice Problems:
- Longest Increasing Subsequence
- Maximum Product Subarray
Day 28: Advanced Topics and Miscellaneous
- Topics to Cover:
- Bit manipulation
- Greedy algorithms
- Miscellaneous problems (trie, segment tree, disjoint set)
- Practice Problems:
- Single Number
- Decode Ways
- Minimum Spanning Tree
### Week 5: Review and Mock Interviews
Day 29: Review and Weakness Analysis
- Activities:
- Review topics you found difficult
- Revisit problems you struggled with
Day 30: Mock Interviews and Practice
- Activities:
- Conduct mock interviews with a friend or use online platforms
- Focus on communication and explaining your thought process
Top DSA resources to crack coding interview
๐ GeekforGeeks
๐ Leetcode
๐ DSA Steps
๐ FreeCodeCamp
๐ Coding Interviews
๐ Best DSA Resources
Join for more: https://t.iss.one/free4unow_backup
ENJOY LEARNING ๐๐
### Week 1: Foundations and Basic Data Structures
Day 1-3: Arrays and Strings
- Topics to Cover:
- Array basics, operations (insertion, deletion, searching)
- String manipulation
- Two-pointer technique, sliding window technique
- Practice Problems:
- Two Sum
- Maximum Subarray
- Reverse a String
- Longest Substring Without Repeating Characters
Day 4-5: Linked Lists
- Topics to Cover:
- Singly linked list, doubly linked list, circular linked list
- Common operations (insertion, deletion, reversal)
- Practice Problems:
- Reverse a Linked List
- Merge Two Sorted Lists
- Remove Nth Node From End of List
Day 6-7: Stacks and Queues
- Topics to Cover:
- Stack operations (push, pop, top)
- Queue operations (enqueue, dequeue)
- Applications (expression evaluation, backtracking, breadth-first search)
- Practice Problems:
- Valid Parentheses
- Implement Stack using Queues
- Implement Queue using Stacks
### Week 2: Advanced Data Structures
Day 8-10: Trees
- Topics to Cover:
- Binary Trees, Binary Search Trees (BST)
- Tree traversal (preorder, inorder, postorder, level order)
- Practice Problems:
- Invert Binary Tree
- Validate Binary Search Tree
- Serialize and Deserialize Binary Tree
Day 11-13: Heaps and Priority Queues
- Topics to Cover:
- Binary heap (min-heap, max-heap)
- Heap operations (insert, delete, extract-min/max)
- Applications (heap sort, priority queues)
- Practice Problems:
- Kth Largest Element in an Array
- Top K Frequent Elements
- Find Median from Data Stream
Day 14: Hash Tables
- Topics to Cover:
- Hashing concept, hash functions, collision resolution (chaining, open addressing)
- Applications (caching, counting frequencies)
- Practice Problems:
- Two Sum (using hash map)
- Group Anagrams
- Subarray Sum Equals K
### Week 3: Algorithms
Day 15-17: Sorting and Searching Algorithms
- Topics to Cover:
- Sorting algorithms (quick sort, merge sort, bubble sort, insertion sort)
- Searching algorithms (binary search, linear search)
- Practice Problems:
- Merge Intervals
- Search in Rotated Sorted Array
- Sort Colors
- Find Peak Element
Day 18-20: Recursion and Backtracking
- Topics to Cover:
- Basic recursion, tail recursion
- Backtracking (N-Queens, Sudoku solver)
- Practice Problems:
- Permutations
- Combination Sum
- Subsets
- Word Search
Day 21: Divide and Conquer
- Topics to Cover:
- Basic concept, merge sort, quick sort, binary search
- Practice Problems:
- Median of Two Sorted Arrays
- Pow(x, n)
- Kth Largest Element in an Array (using divide and conquer)
- Maximum Subarray (using divide and conquer)
### Week 4: Graphs and Dynamic Programming
Day 22-24: Graphs
- Topics to Cover:
- Graph representations (adjacency list, adjacency matrix)
- Traversal algorithms (DFS, BFS)
- Shortest path algorithms (Dijkstra's, Bellman-Ford)
- Practice Problems:
- Number of Islands
Day 25-27: Dynamic Programming
- Topics to Cover:
- Basic concept, memoization, tabulation
- Common problems (knapsack, longest common subsequence)
- Practice Problems:
- Longest Increasing Subsequence
- Maximum Product Subarray
Day 28: Advanced Topics and Miscellaneous
- Topics to Cover:
- Bit manipulation
- Greedy algorithms
- Miscellaneous problems (trie, segment tree, disjoint set)
- Practice Problems:
- Single Number
- Decode Ways
- Minimum Spanning Tree
### Week 5: Review and Mock Interviews
Day 29: Review and Weakness Analysis
- Activities:
- Review topics you found difficult
- Revisit problems you struggled with
Day 30: Mock Interviews and Practice
- Activities:
- Conduct mock interviews with a friend or use online platforms
- Focus on communication and explaining your thought process
Top DSA resources to crack coding interview
๐ GeekforGeeks
๐ Leetcode
๐ DSA Steps
๐ FreeCodeCamp
๐ Coding Interviews
๐ Best DSA Resources
Join for more: https://t.iss.one/free4unow_backup
ENJOY LEARNING ๐๐
โค2๐2
Python Important Star Patterns.
๐7
Useful Cheatsheets for Programmers
๐๐
Data Science Cheatsheet
https://github.com/aaronwangy/Data-Science-Cheatsheet
SQL Cheatsheet
https://learnsql.com/blog/sql-basics-cheat-sheet/
https://t.iss.one/programming_guide/299
https://www.sqltutorial.org/wp-content/uploads/2016/04/SQL-cheat-sheet.pdf
https://t.iss.one/learndataanalysis/442?single
Java Programming Cheatsheet
https://introcs.cs.princeton.edu/java/11cheatsheet/
PHP and Ruby Cheatsheets
https://t.iss.one/programming_guide/300
https://t.iss.one/programming_guide/301
Pandas in 5 minutes
https://bit.ly/3EZgNgF
Python Cheat sheet
https://t.iss.one/pythondevelopersindia/314
UML Cheat sheet
https://www.guru99.com/uml-cheatsheet-reference-guide.html.
GIT and Machine Learning Cheatsheet
https://t.iss.one/datasciencefun/714?single
Javascript Cheat sheet
https://t.iss.one/programming_guide/623
HTML Cheatsheet
https://web.stanford.edu/group/csp/cs21/htmlcheatsheet.pdf
ENJOY LEARNING ๐๐
๐๐
Data Science Cheatsheet
https://github.com/aaronwangy/Data-Science-Cheatsheet
SQL Cheatsheet
https://learnsql.com/blog/sql-basics-cheat-sheet/
https://t.iss.one/programming_guide/299
https://www.sqltutorial.org/wp-content/uploads/2016/04/SQL-cheat-sheet.pdf
https://t.iss.one/learndataanalysis/442?single
Java Programming Cheatsheet
https://introcs.cs.princeton.edu/java/11cheatsheet/
PHP and Ruby Cheatsheets
https://t.iss.one/programming_guide/300
https://t.iss.one/programming_guide/301
Pandas in 5 minutes
https://bit.ly/3EZgNgF
Python Cheat sheet
https://t.iss.one/pythondevelopersindia/314
UML Cheat sheet
https://www.guru99.com/uml-cheatsheet-reference-guide.html.
GIT and Machine Learning Cheatsheet
https://t.iss.one/datasciencefun/714?single
Javascript Cheat sheet
https://t.iss.one/programming_guide/623
HTML Cheatsheet
https://web.stanford.edu/group/csp/cs21/htmlcheatsheet.pdf
ENJOY LEARNING ๐๐
๐6
๐๐๐ญ๐ ๐๐ญ๐ซ๐ฎ๐๐ญ๐ฎ๐ซ๐๐ฌ : ๐๐ฑ๐ฉ๐ฅ๐จ๐ซ๐ ๐ฅ๐ข๐ฌ๐ญ๐ฌ, ๐ญ๐ฎ๐ฉ๐ฅ๐๐ฌ, ๐๐ง๐ ๐๐ข๐๐ญ๐ข๐จ๐ง๐๐ซ๐ข๐๐ฌ
๐๐ข๐ฌ๐ญ๐ฌ:
- Lists are ordered collections of items.
- They are mutable, meaning you can change their content after creation.
- You can have duplicate values in a list.
- Lists are defined using square brackets [ ].
Example:
my_list = [1, 2, 3, 'apple', 'banana', 'cherry']
๐๐ฎ๐ฉ๐ฅ๐๐ฌ:
- Tuples are ordered collections of items, similar to lists.
- However, they are immutable, meaning once created, their content cannot be changed.
- Tuples are defined using parentheses ( ).
- You can have duplicate values in a tuple.
Example:
my_tuple = (1, 2, 3, 'apple', 'banana', 'cherry')
๐๐ข๐๐ญ๐ข๐จ๐ง๐๐ซ๐ข๐๐ฌ:
- Dictionaries are unordered collections of items that are stored as key-value pairs.
- They are mutable.
- Dictionaries are defined using curly braces { }.
- Each key in a dictionary must be unique, but the values can be duplicated.
Example:
my_dict = {'name': 'John', 'age': 30, 'city': 'New York'}
I have curated the best interview resources to crack Python Interviews ๐๐
https://topmate.io/coding/898340
Hope you'll like it
Like this post if you need more resources like this ๐โค๏ธ
- Lists are ordered collections of items.
- They are mutable, meaning you can change their content after creation.
- You can have duplicate values in a list.
- Lists are defined using square brackets [ ].
Example:
my_list = [1, 2, 3, 'apple', 'banana', 'cherry']
๐๐ฎ๐ฉ๐ฅ๐๐ฌ:
- Tuples are ordered collections of items, similar to lists.
- However, they are immutable, meaning once created, their content cannot be changed.
- Tuples are defined using parentheses ( ).
- You can have duplicate values in a tuple.
Example:
my_tuple = (1, 2, 3, 'apple', 'banana', 'cherry')
๐๐ข๐๐ญ๐ข๐จ๐ง๐๐ซ๐ข๐๐ฌ:
- Dictionaries are unordered collections of items that are stored as key-value pairs.
- They are mutable.
- Dictionaries are defined using curly braces { }.
- Each key in a dictionary must be unique, but the values can be duplicated.
Example:
my_dict = {'name': 'John', 'age': 30, 'city': 'New York'}
I have curated the best interview resources to crack Python Interviews ๐๐
https://topmate.io/coding/898340
Hope you'll like it
Like this post if you need more resources like this ๐โค๏ธ
โค5๐5๐1
DSA INTERVIEW QUESTIONS AND ANSWERS
1. What is the difference between file structure and storage structure?
The difference lies in the memory area accessed. Storage structure refers to the data structure in the memory of the computer system,
whereas file structure represents the storage structure in the auxiliary memory.
2. Are linked lists considered linear or non-linear Data Structures?
Linked lists are considered both linear and non-linear data structures depending upon the application they are used for. When used for
access strategies, it is considered as a linear data-structure. When used for data storage, it is considered a non-linear data structure.
3. How do you reference all of the elements in a one-dimension array?
All of the elements in a one-dimension array can be referenced using an indexed loop as the array subscript so that the counter runs
from 0 to the array size minus one.
4. What are dynamic Data Structures? Name a few.
They are collections of data in memory that expand and contract to grow or shrink in size as a program runs. This enables the programmer
to control exactly how much memory is to be utilized.Examples are the dynamic array, linked list, stack, queue, and heap.
5. What is a Dequeue?
It is a double-ended queue, or a data structure, where the elements can be inserted or deleted at both ends (FRONT and REAR).
6. What operations can be performed on queues?
enqueue() adds an element to the end of the queue
dequeue() removes an element from the front of the queue
init() is used for initializing the queue
isEmpty tests for whether or not the queue is empty
The front is used to get the value of the first data item but does not remove it
The rear is used to get the last item from a queue.
7. What is the merge sort? How does it work?
Merge sort is a divide-and-conquer algorithm for sorting the data. It works by merging and sorting adjacent data to create bigger sorted
lists, which are then merged recursively to form even bigger sorted lists until you have one single sorted list.
8.How does the Selection sort work?
Selection sort works by repeatedly picking the smallest number in ascending order from the list and placing it at the beginning. This process is repeated moving toward the end of the list or sorted subarray.
Scan all items and find the smallest. Switch over the position as the first item. Repeat the selection sort on the remaining N-1 items. We always iterate forward (i from 0 to N-1) and swap with the smallest element (always i).
Time complexity: best case O(n2); worst O(n2)
Space complexity: worst O(1)
9. What are the applications of graph Data Structure?
Transport grids where stations are represented as vertices and routes as the edges of the graph
Utility graphs of power or water, where vertices are connection points and edge the wires or pipes connecting them
Social network graphs to determine the flow of information and hotspots (edges and vertices)
Neural networks where vertices represent neurons and edge the synapses between them
10. What is an AVL tree?
An AVL (Adelson, Velskii, and Landi) tree is a height balancing binary search tree in which the difference of heights of the left
and right subtrees of any node is less than or equal to one. This controls the height of the binary search tree by not letting
it get skewed. This is used when working with a large data set, with continual pruning through insertion and deletion of data.
11. Differentiate NULL and VOID ?
Null is a value, whereas Void is a data type identifier
Null indicates an empty value for a variable, whereas void indicates pointers that have no initial size
Null means it never existed; Void means it existed but is not in effect
You can check these resources for Coding interview Preparation
Credits: https://t.iss.one/free4unow_backup
All the best ๐๐
1. What is the difference between file structure and storage structure?
The difference lies in the memory area accessed. Storage structure refers to the data structure in the memory of the computer system,
whereas file structure represents the storage structure in the auxiliary memory.
2. Are linked lists considered linear or non-linear Data Structures?
Linked lists are considered both linear and non-linear data structures depending upon the application they are used for. When used for
access strategies, it is considered as a linear data-structure. When used for data storage, it is considered a non-linear data structure.
3. How do you reference all of the elements in a one-dimension array?
All of the elements in a one-dimension array can be referenced using an indexed loop as the array subscript so that the counter runs
from 0 to the array size minus one.
4. What are dynamic Data Structures? Name a few.
They are collections of data in memory that expand and contract to grow or shrink in size as a program runs. This enables the programmer
to control exactly how much memory is to be utilized.Examples are the dynamic array, linked list, stack, queue, and heap.
5. What is a Dequeue?
It is a double-ended queue, or a data structure, where the elements can be inserted or deleted at both ends (FRONT and REAR).
6. What operations can be performed on queues?
enqueue() adds an element to the end of the queue
dequeue() removes an element from the front of the queue
init() is used for initializing the queue
isEmpty tests for whether or not the queue is empty
The front is used to get the value of the first data item but does not remove it
The rear is used to get the last item from a queue.
7. What is the merge sort? How does it work?
Merge sort is a divide-and-conquer algorithm for sorting the data. It works by merging and sorting adjacent data to create bigger sorted
lists, which are then merged recursively to form even bigger sorted lists until you have one single sorted list.
8.How does the Selection sort work?
Selection sort works by repeatedly picking the smallest number in ascending order from the list and placing it at the beginning. This process is repeated moving toward the end of the list or sorted subarray.
Scan all items and find the smallest. Switch over the position as the first item. Repeat the selection sort on the remaining N-1 items. We always iterate forward (i from 0 to N-1) and swap with the smallest element (always i).
Time complexity: best case O(n2); worst O(n2)
Space complexity: worst O(1)
9. What are the applications of graph Data Structure?
Transport grids where stations are represented as vertices and routes as the edges of the graph
Utility graphs of power or water, where vertices are connection points and edge the wires or pipes connecting them
Social network graphs to determine the flow of information and hotspots (edges and vertices)
Neural networks where vertices represent neurons and edge the synapses between them
10. What is an AVL tree?
An AVL (Adelson, Velskii, and Landi) tree is a height balancing binary search tree in which the difference of heights of the left
and right subtrees of any node is less than or equal to one. This controls the height of the binary search tree by not letting
it get skewed. This is used when working with a large data set, with continual pruning through insertion and deletion of data.
11. Differentiate NULL and VOID ?
Null is a value, whereas Void is a data type identifier
Null indicates an empty value for a variable, whereas void indicates pointers that have no initial size
Null means it never existed; Void means it existed but is not in effect
You can check these resources for Coding interview Preparation
Credits: https://t.iss.one/free4unow_backup
All the best ๐๐
๐5
Famous Programming Languages and Their Frameworks
1. Python:
Frameworks:
Django
Flask
Pyramid
Tornado
2. JavaScript:
Frameworks (Front-End):
React
Angular
Vue.js
Ember.js
Frameworks (Back-End):
Node.js (Runtime)
Express.js
Nest.js
Meteor
3. Java:
Frameworks:
Spring Framework
Hibernate
Apache Struts
Play Framework
4. Ruby:
Frameworks:
Ruby on Rails (Rails)
Sinatra
Hanami
5. PHP:
Frameworks:
Laravel
Symfony
CodeIgniter
Yii
Zend Framework
6. C#:
Frameworks:
.NET Framework
ASP.NET
ASP.NET Core
7. Go (Golang):
Frameworks:
Gin
Echo
Revel
8. Rust:
Frameworks:
Rocket
Actix
Warp
9. Swift:
Frameworks (iOS/macOS):
SwiftUI
UIKit
Cocoa Touch
10. Kotlin:
Frameworks (Android):
Android Jetpack
Ktor
11. TypeScript:
Frameworks (Front-End):
Angular
Vue.js (with TypeScript)
React (with TypeScript)
12. Scala:
Frameworks:
Play Framework
Akka
13. Perl:
Frameworks:
Dancer
Catalyst
14. Lua:
Frameworks:
OpenResty (for web development)
15. Dart:
Frameworks:
Flutter (for mobile app development)
16. R:
Frameworks (for data science and statistics):
Shiny
ggplot2
17. Julia:
Frameworks (for scientific computing):
Pluto.jl
Genie.jl
18. MATLAB:
Frameworks (for scientific and engineering applications):
Simulink
19. COBOL:
Frameworks:
COBOL-IT
20. Erlang:
Frameworks:
Phoenix (for web applications)
21. Groovy:
Frameworks:
Grails (for web applications)
Best Programming Resources: https://topmate.io/coding/898340
Give credits while sharing: https://t.iss.one/programming_guide
ENJOY LEARNING ๐๐
1. Python:
Frameworks:
Django
Flask
Pyramid
Tornado
2. JavaScript:
Frameworks (Front-End):
React
Angular
Vue.js
Ember.js
Frameworks (Back-End):
Node.js (Runtime)
Express.js
Nest.js
Meteor
3. Java:
Frameworks:
Spring Framework
Hibernate
Apache Struts
Play Framework
4. Ruby:
Frameworks:
Ruby on Rails (Rails)
Sinatra
Hanami
5. PHP:
Frameworks:
Laravel
Symfony
CodeIgniter
Yii
Zend Framework
6. C#:
Frameworks:
.NET Framework
ASP.NET
ASP.NET Core
7. Go (Golang):
Frameworks:
Gin
Echo
Revel
8. Rust:
Frameworks:
Rocket
Actix
Warp
9. Swift:
Frameworks (iOS/macOS):
SwiftUI
UIKit
Cocoa Touch
10. Kotlin:
Frameworks (Android):
Android Jetpack
Ktor
11. TypeScript:
Frameworks (Front-End):
Angular
Vue.js (with TypeScript)
React (with TypeScript)
12. Scala:
Frameworks:
Play Framework
Akka
13. Perl:
Frameworks:
Dancer
Catalyst
14. Lua:
Frameworks:
OpenResty (for web development)
15. Dart:
Frameworks:
Flutter (for mobile app development)
16. R:
Frameworks (for data science and statistics):
Shiny
ggplot2
17. Julia:
Frameworks (for scientific computing):
Pluto.jl
Genie.jl
18. MATLAB:
Frameworks (for scientific and engineering applications):
Simulink
19. COBOL:
Frameworks:
COBOL-IT
20. Erlang:
Frameworks:
Phoenix (for web applications)
21. Groovy:
Frameworks:
Grails (for web applications)
Best Programming Resources: https://topmate.io/coding/898340
Give credits while sharing: https://t.iss.one/programming_guide
ENJOY LEARNING ๐๐
๐4โค2๐1
Evolution of Programming Languages๐ฅ๏ธ
๐ฐProgramming Languages๐ฐ
1. JAVA:
More than 85% android apps are created using JAVA. It is also used in big (big means big) websites. It is a portable programming language which makes it easy to use on multi platforms.
2. Java Script:
Its a browser/client side language. It makes the webpage more interactive. Like for example when you enter a comment on Facebook then the whole page doesnโt load., just that comment is added. This kind of functionalities are added into webpages with JavaScript. Javascript brought about a revolution in webapps.
3. Assembly Language:
The most low level programming language because its nothing more than machine code written in human readable form. Its hard to write and you need to have deep understanding of computers to use this because you are really talking with it. Its very fast in terms of execution.
4. C:
Its a low level language too thatโs why its fast. It is used to program operating system, computer games and software which need to be fast. It is hard to write but gives you more control of your computer.
5. C++ :
Its C with more features and those features make it more complex.
6. Perl:
A language which was developed to create small scripts easily . Programming in Perl is easy and efficient but the programs are comparatively slower.
7. Python:
Perl was made better and named Python. Its easy, efficient and flexible. You can automate things with python in a go.
8. Ruby:
Its similar to Python but it became popular when they created a web application development framework named Rails which lets developers to write their web application conveniently.
9. HTML and CSS:
HTML and CSS are languages not programming languages because they are just used display things on a website. They do not do any actual processing. HTML is used to create the basic structure of the website and then CSS is used to make it look good.
10. PHP:
It is used to process things in a website. It is server-sided language as it doesnโt get executed in user browser, but on the server. It can be used to generate dynamic webpage content.
11. SQL:
This is not exactly a programming language. It is used to interact with databases.
โก๏ธ This list could be long because there are too many programming language but I introduced you to the popular ones.
โWhich Language Should Be Your First Programming Language?
โ Suggestions..
1. Getting Started
Learn HTML & CSS. They are easy and will give you a basic idea of how programming works. You will be able to create your own webpages. After HTML you can go with PHP and SQL, so will have a good grasp over web designing and then you can go with python, C or Java. I assure you that PHP, HTML and SQL will be definitely useful in your hacking journey.
2. Understanding Computer And Programming Better
C..The classic C! C is one of the most foundational languages. If you learn C, you will have a deep knowledge of Computers and you will have a greater understanding of programming too, that will make you a better programmer. You will spend most of your time compiling though (just trying to crack a joke).
3. Too Eager To Create Programs?
Python! Python is very easy to learn and you can create a program which does something instead of programming calculators. Well Python doesnโt start you from the basics but with if you know python, you will be able to understand other languages better. One benefit of python is that you donโt need to compile the script to run it, just write one and run it.
Join for more: https://t.iss.one/programming_guide
๐ฐProgramming Languages๐ฐ
1. JAVA:
More than 85% android apps are created using JAVA. It is also used in big (big means big) websites. It is a portable programming language which makes it easy to use on multi platforms.
2. Java Script:
Its a browser/client side language. It makes the webpage more interactive. Like for example when you enter a comment on Facebook then the whole page doesnโt load., just that comment is added. This kind of functionalities are added into webpages with JavaScript. Javascript brought about a revolution in webapps.
3. Assembly Language:
The most low level programming language because its nothing more than machine code written in human readable form. Its hard to write and you need to have deep understanding of computers to use this because you are really talking with it. Its very fast in terms of execution.
4. C:
Its a low level language too thatโs why its fast. It is used to program operating system, computer games and software which need to be fast. It is hard to write but gives you more control of your computer.
5. C++ :
Its C with more features and those features make it more complex.
6. Perl:
A language which was developed to create small scripts easily . Programming in Perl is easy and efficient but the programs are comparatively slower.
7. Python:
Perl was made better and named Python. Its easy, efficient and flexible. You can automate things with python in a go.
8. Ruby:
Its similar to Python but it became popular when they created a web application development framework named Rails which lets developers to write their web application conveniently.
9. HTML and CSS:
HTML and CSS are languages not programming languages because they are just used display things on a website. They do not do any actual processing. HTML is used to create the basic structure of the website and then CSS is used to make it look good.
10. PHP:
It is used to process things in a website. It is server-sided language as it doesnโt get executed in user browser, but on the server. It can be used to generate dynamic webpage content.
11. SQL:
This is not exactly a programming language. It is used to interact with databases.
โก๏ธ This list could be long because there are too many programming language but I introduced you to the popular ones.
โWhich Language Should Be Your First Programming Language?
โ Suggestions..
1. Getting Started
Learn HTML & CSS. They are easy and will give you a basic idea of how programming works. You will be able to create your own webpages. After HTML you can go with PHP and SQL, so will have a good grasp over web designing and then you can go with python, C or Java. I assure you that PHP, HTML and SQL will be definitely useful in your hacking journey.
2. Understanding Computer And Programming Better
C..The classic C! C is one of the most foundational languages. If you learn C, you will have a deep knowledge of Computers and you will have a greater understanding of programming too, that will make you a better programmer. You will spend most of your time compiling though (just trying to crack a joke).
3. Too Eager To Create Programs?
Python! Python is very easy to learn and you can create a program which does something instead of programming calculators. Well Python doesnโt start you from the basics but with if you know python, you will be able to understand other languages better. One benefit of python is that you donโt need to compile the script to run it, just write one and run it.
Join for more: https://t.iss.one/programming_guide
โค2๐2
COMMON TERMINOLOGIES IN PYTHON - PART 1
Have you ever gotten into a discussion with a programmer before? Did you find some of the Terminologies mentioned strange or you didn't fully understand them?
In this series, we would be looking at the common Terminologies in python.
It is important to know these Terminologies to be able to professionally/properly explain your codes to people and/or to be able to understand what people say in an instant when these codes are mentioned. Below are a few:
IDLE (Integrated Development and Learning Environment) - this is an environment that allows you to easily write Python code. IDLE can be used to execute a single statements and create, modify, and execute Python scripts.
Python Shell - This is the interactive environment that allows you to type in python code and execute them immediately
System Python - This is the version of python that comes with your operating system
Prompt - usually represented by the symbol ">>>" and it simply means that python is waiting for you to give it some instructions
REPL (Read-Evaluate-Print-Loop) - this refers to the sequence of events in your interactive window in form of a loop (python reads the code inputted>the code is evaluated>output is printed)
Argument - this is a value that is passed to a function when called eg print("Hello World")... "Hello World" is the argument that is being passed.
Function - this is a code that takes some input, known as arguments, processes that input and produces an output called a return value. E.g print("Hello World")... print is the function
Return Value - this is the value that a function returns to the calling script or function when it completes its task (in other words, Output). E.g.
>>> print("Hello World")
Hello World
Where Hello World is your return value.
Note: A return value can be any of these variable types: handle, integer, object, or string
Script - This is a file where you store your python code in a text file and execute all of the code with a single command
Script files - this is a file containing a group of python scripts
Have you ever gotten into a discussion with a programmer before? Did you find some of the Terminologies mentioned strange or you didn't fully understand them?
In this series, we would be looking at the common Terminologies in python.
It is important to know these Terminologies to be able to professionally/properly explain your codes to people and/or to be able to understand what people say in an instant when these codes are mentioned. Below are a few:
IDLE (Integrated Development and Learning Environment) - this is an environment that allows you to easily write Python code. IDLE can be used to execute a single statements and create, modify, and execute Python scripts.
Python Shell - This is the interactive environment that allows you to type in python code and execute them immediately
System Python - This is the version of python that comes with your operating system
Prompt - usually represented by the symbol ">>>" and it simply means that python is waiting for you to give it some instructions
REPL (Read-Evaluate-Print-Loop) - this refers to the sequence of events in your interactive window in form of a loop (python reads the code inputted>the code is evaluated>output is printed)
Argument - this is a value that is passed to a function when called eg print("Hello World")... "Hello World" is the argument that is being passed.
Function - this is a code that takes some input, known as arguments, processes that input and produces an output called a return value. E.g print("Hello World")... print is the function
Return Value - this is the value that a function returns to the calling script or function when it completes its task (in other words, Output). E.g.
>>> print("Hello World")
Hello World
Where Hello World is your return value.
Note: A return value can be any of these variable types: handle, integer, object, or string
Script - This is a file where you store your python code in a text file and execute all of the code with a single command
Script files - this is a file containing a group of python scripts
๐7๐1