-
Notifications
You must be signed in to change notification settings - Fork 4
Home
#DAA-ML-BT-Algo
Title: Calculate Fibonacci numbers (non-recursive and recursive) and analyze time and space complexity.
Objective: Understand Fibonacci series calculation and efficiency of recursive vs non-recursive implementations.
- Key Details: Non-recursive approach is iterative and efficient; recursive approach has exponential complexity due to repeated calculations.
- Fibonacci Series: A sequence where each term is the sum of the two preceding ones, typically starting with 0 and 1.
- Formula: ( F_n = F_{n-1} + F_{n-2} ) with seed values ( F_0 = 0 ) and ( F_1 = 1 ).
- Complexity: Recursive method is ( O(2^n) ); iterative is ( O(n) ).
Title: Implement Huffman Encoding using a greedy strategy.
Objective: Learn about Huffman encoding and analyze its complexity.
- Key Details: Uses a greedy algorithm to compress data without loss.
- Huffman Encoding: Assigns shorter codes to frequent characters, longer codes to less frequent ones.
- Algorithm Steps: Create frequency table, build a binary tree, and assign binary codes.
- Complexity: Efficiently encodes with ( O(n \log n) ) complexity due to heap operations.
Title: Solve the fractional knapsack problem using a greedy method.
Objective: Analyze time and space complexity of fractional knapsack problem with a greedy approach.
- Key Details: Fractional knapsack allows partial items and optimizes by selecting the highest value-to-weight ratios.
- Greedy Strategy: Sort items by value/weight ratio, add until reaching capacity.
- Complexity: Sorting step ( O(n \log n) ); total time remains efficient.
Title: Solve a 0/1 knapsack problem using dynamic programming.
Objective: Use dynamic programming to analyze 0/1 knapsack problem complexity.
- Key Details: Uses a dynamic programming table to solve subproblems without recomputation.
- 0/1 Knapsack: Each item is either included or excluded; no partial selection allowed.
- Steps: Populate DP table with optimal values, ensuring maximum value within weight limit.
- Complexity: ( O(nW) ), where ( W ) is the knapsack’s capacity.
Title: Analyze quick sort using deterministic and randomized variants.
Objective: Compare deterministic and randomized quick sort for time and space efficiency.
- Key Details: Randomized quicksort reduces the risk of worst-case partitioning by random pivot selection.
- Randomized Algorithm: Reduces worst-case time complexity in practice.
- Complexity: Expected ( O(n \log n) ); deterministic worst-case remains ( O(n^2) ).
Title: Predict Uber ride prices based on location data.
Objective: Apply preprocessing, linear regression, and random forest regression.
- Key Details: Data preprocessing involves handling outliers, normalizing, and applying regression models.
-
Regression Models:
- Linear Regression predicts continuous outcomes.
- Random Forest Regression uses multiple decision trees for better accuracy.
Title: Classify emails as spam or not using binary classification.
Objective: Implement K-Nearest Neighbors and Support Vector Machine algorithms.
- Key Details: Utilizes machine learning models to classify text based on word frequency and other features.
- Binary Classification: Categorizes emails as “spam” or “not spam.”
-
Algorithms:
- KNN: Simple, effective for small datasets.
- SVM: Effective in high-dimensional spaces.
Title: Build a neural network to predict customer churn in banking.
Objective: Implement neural networks and understand model evaluation.
- Key Details: Aims to predict whether customers will leave based on demographic and financial features.
- Artificial Neural Network (ANN): Consists of input, hidden, and output layers for complex data patterns.
- Evaluation: Uses a confusion matrix to measure accuracy and error rates.
Title: Find the local minima of a function using gradient descent.
Objective: Understand the concept of optimization in machine learning.
- Key Details: Demonstrates optimization of a function using iterative adjustments.
- Gradient Descent: Moves in the direction of the negative gradient to minimize the function.
- Use Case: Commonly used in training machine learning models by minimizing loss functions.
Title: Classify diabetes status using K-Nearest Neighbors.
Objective: Use KNN on medical data and evaluate prediction accuracy.
- Key Details: Focuses on classification of medical data using distance-based methods.
- KNN: Classifies by majority class among nearest neighbors.
- Evaluation Metrics: Confusion matrix provides precision, recall, and accuracy.
Title: Study and implement basic cryptocurrency concepts.
Objective: Understand the mechanisms behind cryptocurrency transactions and wallets.
- Key Details: Examines digital wallets and blockchain fundamentals.
- Blockchain: A distributed ledger where each transaction is validated and recorded.
-
Wallets:
- Hot Wallets: Online, accessible but less secure.
- Cold Wallets: Offline, more secure, ideal for long-term storage.
Title: Write a smart contract for banking operations on a test network.
Objective: Develop a basic smart contract for deposits, withdrawals, and balance checks.
- Key Details: Smart contracts automate and secure banking transactions.
- Solidity Programming: Language used for coding smart contracts on Ethereum.
- Features: Includes functions to handle deposit, withdrawal, and balance operations.
Title: Write a Solidity program to create a student data storage system.
Objective: Use blockchain to securely store and manage student data.
- Key Details: Provides data immutability and transparency.
-
Solidity Constructs:
- Structures: Define data schema for each student.
- Arrays: Store multiple student entries.
- Fallback Functions: Handle unexpected calls.
- Deployment: Deployed on Ethereum test network, tracking gas and fees.
Title: Write a survey report on types of blockchains and real-time applications.
Objective: Explore blockchain types and understand practical use cases.
- Key Details: Covers public, private, and consortium blockchains and real-world uses.
-
Applications:
- Finance: Supports digital transactions and cryptocurrencies.
- Healthcare: Manages patient data securely.
- Supply Chain: Tracks goods with transparency.
Title: Develop a simple business network using Hyperledger.
Objective: Create a blockchain business application on Hyperledger.
- Key Details: Uses Hyperledger for building permissioned blockchain applications.
- Business Network: Defines participants, assets, and transactions in a private blockchain.
- Examples: Asset tracking, identity management, and secure voting.