├── .vs
└── AlgorithmsMadeEasy
│ ├── v15
│ └── .suo
│ └── v16
│ └── Server
│ └── sqlite3
│ ├── db.lock
│ └── storage.ide
├── AlgorithmsMadeEasy.sln
├── AlgorithmsMadeEasy.v11.suo
├── AlgorithmsMadeEasy
├── AlgorithmsMadeEasy.csproj
├── AlgorithmsMadeEasy.csproj.orig
├── AlgorithmsMadeEasy.csproj.user
├── Anagrams.cs
├── App.config
├── BinarySearchTree.cs
├── BubbleSort.cs
├── CuttingRod.cs
├── InsertionSort.cs
├── KMPSubstringSearch.cs
├── LongestPalindromicSubsequence.cs
├── LowestCommonAncestorBinaryTree.cs
├── MaxHeap.cs
├── MaximumRectangularArea.cs
├── MaximumSizeRectangle.cs
├── MergeSort.cs
├── MinHeap.cs
├── MinimumCoinChange.cs
├── MinimumCostPathInMatrix.cs
├── MinimumJumpToReachEnd.cs
├── OptimalStrategyGamePickFromEndsOfArray.cs
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── QuickSort.cs
├── SelectionSort.cs
├── SinglyThreadedBinarySearchTree.cs
├── StaircaseProblemFibonacciSeries.cs
├── StringInterleaving.cs
├── TopologicalSortGraphAlgorithm.cs
├── Tries.cs
├── WeightedJobScheduling.cs
├── bin
│ └── Debug
│ │ ├── AlgorithmsMadeEasy.exe
│ │ ├── AlgorithmsMadeEasy.exe.config
│ │ ├── AlgorithmsMadeEasy.exe.orig
│ │ ├── AlgorithmsMadeEasy.pdb
│ │ ├── AlgorithmsMadeEasy.pdb.orig
│ │ ├── AlgorithmsMadeEasy.vshost.exe
│ │ ├── AlgorithmsMadeEasy.vshost.exe.config
│ │ ├── AlgorithmsMadeEasy.vshost.exe.manifest
│ │ ├── QuickGraph.Data.dll
│ │ ├── QuickGraph.Data.xml
│ │ ├── QuickGraph.Graphviz.dll
│ │ ├── QuickGraph.Graphviz.xml
│ │ ├── QuickGraph.Serialization.dll
│ │ ├── QuickGraph.Serialization.xml
│ │ ├── QuickGraph.dll
│ │ └── QuickGraph.xml
├── obj
│ └── Debug
│ │ ├── AlgorithmsMadeEasy.csproj.CopyComplete
│ │ ├── AlgorithmsMadeEasy.csproj.FileListAbsolute.txt
│ │ ├── AlgorithmsMadeEasy.csproj.FileListAbsolute.txt.orig
│ │ ├── AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache
│ │ ├── AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache.orig
│ │ ├── AlgorithmsMadeEasy.exe
│ │ ├── AlgorithmsMadeEasy.exe.orig
│ │ ├── AlgorithmsMadeEasy.pdb
│ │ ├── AlgorithmsMadeEasy.pdb.orig
│ │ ├── CoreCompileInputs.cache
│ │ ├── DesignTimeResolveAssemblyReferencesInput.cache
│ │ ├── DesignTimeResolveAssemblyReferencesInput.cache.orig
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
└── packages.config
├── DesignPatternImplementation
├── AbstractFactory
│ └── AbstractFactory.cs
├── ActiveObject
│ └── ActiveObject.cs
├── Adapter
│ └── Adapter.cs
├── App.config
├── Bridge
│ └── Bridge.cs
├── Builder
│ └── Builder.cs
├── ChainOfResponsibilities
│ └── ChainOfResponsibilities.cs
├── Command
│ ├── AddTextCommand.cs
│ ├── BaseCommand.cs
│ └── Controller.cs
├── CommandDP
│ └── Command.cs
├── Composite
│ └── Composite.cs
├── Decorator
│ └── Decorator.cs
├── DesignPatternImplementation.csproj
├── Facade
│ └── Facade.cs
├── Factory
│ └── Factory.cs
├── Flyweight
│ └── Flyweight.cs
├── Interpreter
│ └── Interpreter.cs
├── Iterator
│ └── Iterator.cs
├── Mediator
│ └── Mediator.cs
├── Memento
│ └── Memento.cs
├── Observer
│ └── Observer.cs
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── Prototype
│ └── Prototype.cs
├── Proxy
│ └── Proxy.cs
├── Singleton
│ └── Singleton.cs
├── State
│ └── State.cs
├── Strategy
│ └── Strategy.cs
├── TemplateMethod
│ └── TemplateMethod.cs
├── Visitor
│ └── Visitor.cs
├── bin
│ └── Debug
│ │ └── DesignPatternImplementation.exe.config
└── obj
│ └── Debug
│ ├── .NETFramework,Version=v4.5.2.AssemblyAttributes.cs
│ ├── DesignPatternImplementation.csproj.FileListAbsolute.txt
│ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
├── DesignPatternsTests
├── Command
│ └── CommandTests.cs
├── DesignPatternsTests.csproj
├── Properties
│ └── AssemblyInfo.cs
├── bin
│ └── Debug
│ │ ├── DesignPatternImplementation.exe.config
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.xml
├── obj
│ └── Debug
│ │ ├── DesignPatternsTests.csproj.FileListAbsolute.txt
│ │ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ │ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ │ └── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
└── packages.config
├── README.md
└── packages
├── MSTest.TestAdapter.1.1.11
├── MSTest.TestAdapter.1.1.11.nupkg
└── build
│ ├── net45
│ ├── MSTest.TestAdapter.props
│ └── MSTest.TestAdapter.targets
│ ├── netstandard1.0
│ └── MSTest.TestAdapter.props
│ └── uap10.0
│ ├── MSTest.TestAdapter.props
│ └── MSTest.TestAdapter.targets
├── MSTest.TestFramework.1.1.11
├── MSTest.TestFramework.1.1.11.nupkg
└── lib
│ ├── dotnet
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── cs
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── de
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── es
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── fr
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── it
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ja
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ko
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pl
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pt
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ru
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── tr
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── zh-Hans
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ └── zh-Hant
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── net45
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── cs
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── de
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── es
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── fr
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── it
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ja
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ko
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pl
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pt
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ru
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── tr
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── zh-Hans
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ └── zh-Hant
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── netcoreapp1.0
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── cs
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── de
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── es
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── fr
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── it
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ja
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ko
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pl
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pt
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ru
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── tr
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── zh-Hans
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ └── zh-Hant
│ │ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ │ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ └── uap10.0
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── cs
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── de
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── es
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── fr
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── it
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ja
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ko
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pl
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── pt
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── ru
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── tr
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ ├── zh-Hans
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
│ └── zh-Hant
│ ├── Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML
│ └── Microsoft.VisualStudio.TestPlatform.TestFramework.XML
├── QuickGraph.3.6.61119.7
├── QuickGraph.3.6.61119.7.nupkg
└── lib
│ └── net4
│ ├── CodeContracts
│ ├── QuickGraph.Contracts.dll
│ ├── QuickGraph.Data.Contracts.dll
│ ├── QuickGraph.Graphviz.Contracts.dll
│ └── QuickGraph.Serialization.Contracts.dll
│ ├── QuickGraph.Data.XML
│ ├── QuickGraph.Data.dll
│ ├── QuickGraph.Graphviz.XML
│ ├── QuickGraph.Graphviz.dll
│ ├── QuickGraph.Serialization.XML
│ ├── QuickGraph.Serialization.dll
│ ├── QuickGraph.XML
│ └── QuickGraph.dll
└── repositories.config
/.vs/AlgorithmsMadeEasy/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/.vs/AlgorithmsMadeEasy/v15/.suo
--------------------------------------------------------------------------------
/.vs/AlgorithmsMadeEasy/v16/Server/sqlite3/db.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/.vs/AlgorithmsMadeEasy/v16/Server/sqlite3/db.lock
--------------------------------------------------------------------------------
/.vs/AlgorithmsMadeEasy/v16/Server/sqlite3/storage.ide:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/.vs/AlgorithmsMadeEasy/v16/Server/sqlite3/storage.ide
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.26430.15
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AlgorithmsMadeEasy", "AlgorithmsMadeEasy\AlgorithmsMadeEasy.csproj", "{38FC9D85-D9B9-4607-A09E-F1C951180074}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DesignPatternImplementation", "DesignPatternImplementation\DesignPatternImplementation.csproj", "{1E40013C-FAFC-4CD2-B67F-76701F10E388}"
9 | EndProject
10 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DesignPatternsTests", "DesignPatternsTests\DesignPatternsTests.csproj", "{CB61B723-06F7-4CF4-9A58-CBA4D19EB2AF}"
11 | EndProject
12 | Global
13 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
14 | Debug|Any CPU = Debug|Any CPU
15 | Release|Any CPU = Release|Any CPU
16 | EndGlobalSection
17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
18 | {38FC9D85-D9B9-4607-A09E-F1C951180074}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
19 | {38FC9D85-D9B9-4607-A09E-F1C951180074}.Debug|Any CPU.Build.0 = Debug|Any CPU
20 | {38FC9D85-D9B9-4607-A09E-F1C951180074}.Release|Any CPU.ActiveCfg = Release|Any CPU
21 | {38FC9D85-D9B9-4607-A09E-F1C951180074}.Release|Any CPU.Build.0 = Release|Any CPU
22 | {1E40013C-FAFC-4CD2-B67F-76701F10E388}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
23 | {1E40013C-FAFC-4CD2-B67F-76701F10E388}.Debug|Any CPU.Build.0 = Debug|Any CPU
24 | {1E40013C-FAFC-4CD2-B67F-76701F10E388}.Release|Any CPU.ActiveCfg = Release|Any CPU
25 | {1E40013C-FAFC-4CD2-B67F-76701F10E388}.Release|Any CPU.Build.0 = Release|Any CPU
26 | {CB61B723-06F7-4CF4-9A58-CBA4D19EB2AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
27 | {CB61B723-06F7-4CF4-9A58-CBA4D19EB2AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
28 | {CB61B723-06F7-4CF4-9A58-CBA4D19EB2AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
29 | {CB61B723-06F7-4CF4-9A58-CBA4D19EB2AF}.Release|Any CPU.Build.0 = Release|Any CPU
30 | EndGlobalSection
31 | GlobalSection(SolutionProperties) = preSolution
32 | HideSolutionNode = FALSE
33 | EndGlobalSection
34 | EndGlobal
35 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy.v11.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy.v11.suo
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/AlgorithmsMadeEasy.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | ShowAllFiles
5 |
6 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/Anagrams.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class Anagrams
10 | {
11 | public void AnagramMethod()
12 | {
13 | //input
14 | string[] input = { "dog", "cat", "bull", "ullb" };
15 |
16 | string[] sortedOutput = new string[input.Length];
17 |
18 | int count = 0;
19 |
20 | //sort
21 | foreach (var i in input)
22 | {
23 | var currentInput = i.ToCharArray();
24 | Array.Sort(currentInput);
25 | sortedOutput[count] = new string(currentInput);
26 | count++;
27 | }
28 |
29 | Dictionary> output = new Dictionary>();
30 | count = 0;
31 |
32 | //bucketize
33 | foreach (var entry in sortedOutput)
34 | {
35 | if (output.ContainsKey(entry))
36 | {
37 | var temp = output[entry];
38 | temp.Add(input[count]);
39 | }
40 | else
41 | {
42 | List temp = new List();
43 | temp.Add(input[count]);
44 | output.Add(entry, temp);
45 | }
46 | count++;
47 | }
48 |
49 | //print
50 | foreach (var o in output)
51 | {
52 | foreach (var v in o.Value)
53 | {
54 | Console.Write(v + " ");
55 | }
56 | Console.WriteLine();
57 | }
58 |
59 | Console.ReadLine();
60 | }
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/BubbleSort.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class BubbleSort
10 | {
11 | public void BubbleSortMethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int[] iInput = Array.ConvertAll(sInput, int.Parse);
16 |
17 | for (int i = 0; i < iInput.Length; i++)
18 | {
19 | for (int j = 0; j < iInput.Length - 1; j++)
20 | {
21 | if (iInput[j] > iInput[j + 1])
22 | {
23 | int temp = iInput[j];
24 | iInput[j] = iInput[j + 1];
25 | iInput[j + 1] = temp;
26 | }
27 | }
28 | }
29 |
30 | for (int k = 0; k < iInput.Length; k++)
31 | {
32 | Console.Write(iInput[k] + " ");
33 | }
34 | Console.Read();
35 | }
36 | }
37 | }
38 |
39 | /*
40 | * Sample Input
41 | 6 5 3 2 8
42 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/CuttingRod.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class CuttingRod
10 | {
11 | public void CuttingRodMethod()
12 | {
13 |
14 | var sellingLength = System.Console.ReadLine();
15 | int iSellingLength = int.Parse(sellingLength);
16 |
17 | var lengthsAvailable = System.Console.ReadLine();
18 | string[] slengthsAvailable = lengthsAvailable.Split(' ');
19 | int[] iLenghtsAvailable = Array.ConvertAll(slengthsAvailable, int.Parse);
20 |
21 | var costOfLengths = System.Console.ReadLine();
22 | string[] sCostOfLengths = costOfLengths.Split(' ');
23 | int[] iCostOfLengths = Array.ConvertAll(sCostOfLengths, int.Parse);
24 |
25 | int[,] matrix = new int[iCostOfLengths.Length, iSellingLength + 1];
26 |
27 | for (int i = 0; i < iLenghtsAvailable.Length; i++)
28 | {
29 | int currentLength = iLenghtsAvailable[i];
30 | int currentCost = iCostOfLengths[i];
31 | for (int j = 0; j < iSellingLength + 1; j++)
32 | {
33 | if (j == 0)
34 | {
35 | matrix[i, j] = 0;
36 | continue;
37 | }
38 | if (i == 0)
39 | {
40 | int val = j / currentLength;
41 | matrix[i, j] = val;
42 | }
43 | else
44 | {
45 | if (j < currentLength)
46 | {
47 | matrix[i, j] = matrix[i - 1, j];
48 | }
49 | else
50 | {
51 | int val1 = matrix[i - 1, j];
52 | int val2 = matrix[i, j - currentLength] + currentCost;
53 | if (val1 > val2)
54 | {
55 | matrix[i, j] = val1;
56 | }
57 | else
58 | {
59 | matrix[i, j] = val2;
60 | }
61 | }
62 | }
63 |
64 | }
65 | }
66 | System.Console.WriteLine(matrix[iCostOfLengths.Length - 1, iSellingLength]);
67 | System.Console.ReadLine();
68 | }
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/InsertionSort.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class InsertionSort
10 | {
11 | public void InsertionSortMethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int[] iInput = Array.ConvertAll(sInput, int.Parse);
16 |
17 | int value = 0;
18 |
19 | for (int i = 1; i < iInput.Length; i++)
20 | {
21 | value = iInput[i];
22 |
23 | int sortedCount = i - 1;
24 |
25 | while (sortedCount >= 0 && iInput[sortedCount] > value)
26 | {
27 | iInput[sortedCount + 1] = iInput[sortedCount];
28 | sortedCount--;
29 | }
30 | iInput[sortedCount + 1] = value;
31 | }
32 |
33 | for (int k = 0; k < iInput.Length; k++)
34 | {
35 | Console.Write(iInput[k] + " ");
36 | }
37 | Console.Read();
38 | }
39 | }
40 | }
41 |
42 | /*
43 | * Sample Input
44 | 6 5 3 2 8
45 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/KMPSubstringSearch.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class KMPSubstringSearch
10 | {
11 | public void KMPSubstringSearchMethod()
12 | {
13 | string text = System.Console.ReadLine();
14 | char[] sText = text.ToCharArray();
15 |
16 | string pattern = System.Console.ReadLine();
17 | char[] sPattern = pattern.ToCharArray();
18 |
19 | int forwardPointer = 1;
20 | int backwardPointer = 0;
21 |
22 | int[] tempStorage = new int[sPattern.Length];
23 | tempStorage[0] = 0;
24 |
25 | while (forwardPointer < sPattern.Length)
26 | {
27 | if (sPattern[forwardPointer].Equals(sPattern[backwardPointer]))
28 | {
29 | tempStorage[forwardPointer] = backwardPointer + 1;
30 | forwardPointer++;
31 | backwardPointer++;
32 | }
33 | else
34 | {
35 | if (backwardPointer == 0)
36 | {
37 | tempStorage[forwardPointer] = 0;
38 | forwardPointer++;
39 | }
40 | else
41 | {
42 | int temp = tempStorage[backwardPointer];
43 | backwardPointer = temp;
44 | }
45 |
46 | }
47 | }
48 |
49 | int pointer = 0;
50 | int successPoints = sPattern.Length;
51 | bool success = false;
52 | for (int i = 0; i < sText.Length; i++)
53 | {
54 | if (sText[i].Equals(sPattern[pointer]))
55 | {
56 | pointer++;
57 | }
58 | else
59 | {
60 | if (pointer != 0)
61 | {
62 | int tempPointer = pointer - 1;
63 | pointer = tempStorage[tempPointer];
64 | i--;
65 | }
66 | }
67 |
68 | if (successPoints == pointer)
69 | {
70 | success = true;
71 | }
72 | }
73 |
74 | if (success)
75 | {
76 | System.Console.WriteLine("TRUE");
77 | }
78 | else
79 | {
80 | System.Console.WriteLine("FALSE");
81 | }
82 | System.Console.Read();
83 | }
84 | }
85 | }
86 |
87 | /*
88 | * Sample Input
89 | abxabcabcaby
90 | abcaby
91 | */
92 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/LowestCommonAncestorBinaryTree.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class LowestCommonAncestorBinaryTree
10 | {
11 | public void Main()
12 | {
13 | BtTree tree = new BtTree();
14 | tree.Add(5,null);
15 | tree.Add(3,null);
16 | tree.Add(4,null);
17 | tree.Add(6,null);
18 | tree.Add(11,null);
19 | tree.Add(13,null);
20 | tree.Add(9,null);
21 | tree.Add(2,null);
22 |
23 | Node lcaObj = lca(tree.root, 2, 6);
24 | Console.WriteLine(lcaObj.value);
25 | Console.ReadLine();
26 | }
27 |
28 | public Node lca(Node root, int child1, int child2)
29 | {
30 | if (root == null) return null;
31 | if (root.value == child1 || root.value == child2) return root;
32 |
33 | Node left = lca(root.leftElement, child1, child2);
34 | Node right = lca(root.rightElement, child1, child2);
35 |
36 | if (left != null && right != null) return root;
37 |
38 | if (left == null && right == null) return null;
39 |
40 | return right ?? left;
41 | }
42 | }
43 |
44 | class BtTree
45 | {
46 | public Node root = null;
47 |
48 | public void Add(int value, Node currentNode)
49 | {
50 | if (root == null)
51 | {
52 | Node n = new Node();
53 | n.value = value;
54 | this.root = n;
55 | }
56 | else
57 | {
58 | if (currentNode == null)
59 | {
60 | currentNode = this.root;
61 | }
62 |
63 | if (currentNode.value >= value)
64 | {
65 | //Move Left
66 | if (currentNode.leftElement == null)
67 | {
68 | currentNode.leftElement = new Node { value = value, leftElement = null, rightElement = null };
69 | }
70 | else
71 | {
72 | Add(value, currentNode.leftElement);
73 | }
74 |
75 | }
76 | else
77 | {
78 | //Move Right
79 | if (currentNode.rightElement == null)
80 | {
81 | currentNode.rightElement = new Node { value = value, leftElement = null, rightElement = null };
82 | }
83 | else
84 | {
85 | Add(value, currentNode.rightElement);
86 | }
87 |
88 | }
89 | }
90 | }
91 | }
92 | }
93 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/MergeSort.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class MergeSort
10 | {
11 | public void MergeSortMethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int[] numbers = Array.ConvertAll(sInput, int.Parse);
16 | int len = numbers.Length;
17 | MergeSort_Recursive(numbers, 0, len - 1);
18 | for (int i = 0; i < len; i++)
19 | {
20 | Console.Write(numbers[i] + " ");
21 | }
22 |
23 | Console.ReadLine();
24 | }
25 |
26 | static public void MergeSort_Recursive(int[] numbers, int left, int right)
27 | {
28 | int mid;
29 |
30 | if (right > left)
31 | {
32 | mid = (right + left) / 2;
33 | MergeSort_Recursive(numbers, left, mid);
34 | MergeSort_Recursive(numbers, (mid + 1), right);
35 |
36 | DoMerge(numbers, left, (mid + 1), right);
37 | }
38 | }
39 |
40 | static public void DoMerge(int[] numbers, int left, int mid, int right)
41 | {
42 | int[] temp = new int[numbers.Length];
43 | int i, left_end, num_elements, tmp_pos;
44 |
45 | left_end = (mid - 1);
46 | tmp_pos = left;
47 | num_elements = (right - left + 1);
48 |
49 | while ((left <= left_end) && (mid <= right))
50 | {
51 | if (numbers[left] <= numbers[mid])
52 | temp[tmp_pos++] = numbers[left++];
53 | else
54 | temp[tmp_pos++] = numbers[mid++];
55 | }
56 |
57 | while (left <= left_end)
58 | temp[tmp_pos++] = numbers[left++];
59 |
60 | while (mid <= right)
61 | temp[tmp_pos++] = numbers[mid++];
62 |
63 | for (i = 0; i < num_elements; i++)
64 | {
65 | numbers[right] = temp[right];
66 | right--;
67 | }
68 | }
69 | }
70 | }
71 |
72 | /*
73 | * Sample Input
74 | 6 5 3 2 8
75 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/MinimumCoinChange.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class MinimumCoinChange
10 | {
11 | public void MinimumCoinChangeDP()
12 | {
13 | var total = System.Console.ReadLine().Trim();
14 | var iTotal = Int32.Parse(total);
15 |
16 | var input = System.Console.ReadLine();
17 | var subInput = input.Substring(1, input.Length - 2);
18 | string[] cInput = subInput.Split(',');
19 | int[] iInput = Array.ConvertAll(cInput, int.Parse);
20 |
21 | int[] arr1 = new int[iTotal + 1];
22 | int[] arr2 = new int[iTotal + 1];
23 |
24 | for (int i = 0; i < iTotal + 1; i++)
25 | {
26 |
27 | if (i == 0)
28 | {
29 | arr1[i] = 0;
30 | }
31 | else
32 | {
33 | arr1[i] = Int32.MaxValue - 1;
34 | }
35 | arr2[i] = -1;
36 | //System.Console.WriteLine(iInput[i]);
37 | }
38 |
39 | for (int j = 0; j < iInput.Length; j++)
40 | {
41 | for (int k = 1; k < iTotal + 1; k++)
42 | {
43 | if (k >= iInput[j])
44 | {
45 | int firstMin = arr1[k];
46 | int temp = k - iInput[j];
47 | int secondMin = 1 + arr1[temp];
48 |
49 | if (firstMin > secondMin)
50 | {
51 | arr1[k] = secondMin;
52 | arr2[k] = j;
53 | }
54 | }
55 | }
56 | }
57 |
58 | int index = iTotal;
59 |
60 | Dictionary output = new Dictionary();
61 |
62 | for (int l = 0; l < iInput.Length; l++)
63 | {
64 | output.Add(iInput[l], 0);
65 | }
66 |
67 | while (index > 0)
68 | {
69 | int getIndex = arr2[index];
70 | if (output.ContainsKey(iInput[getIndex]))
71 | {
72 | int value = output[iInput[getIndex]];
73 | output[iInput[getIndex]] = value + 1;
74 | }
75 |
76 | index -= iInput[getIndex];
77 | }
78 |
79 | foreach (var pair in output.OrderBy(v => v.Value))
80 | {
81 | System.Console.WriteLine("Rupee {0} coin {1}", pair.Key, pair.Value);
82 | }
83 |
84 | //System.Console.ReadLine();
85 | }
86 | }
87 | }
88 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/MinimumCostPathInMatrix.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class MinimumCostPathInMatrix
10 | {
11 | public void MinimumCostPathInMatrixmethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int row = int.Parse(sInput[0]);
16 | int column = int.Parse(sInput[1]);
17 |
18 | int[,] inputMatrix = new int[row, column];
19 | int[,] outputMatrix = new int[row, column];
20 |
21 | for (int i = 0; i < row; i++)
22 | {
23 | var subInput = System.Console.ReadLine();
24 | string[] sSubInput = subInput.Split(' ');
25 | int[] iSubInput = Array.ConvertAll(sSubInput, int.Parse);
26 |
27 | for (int j = 0; j < iSubInput.Length; j++)
28 | {
29 | inputMatrix[i, j] = iSubInput[j];
30 | }
31 | }
32 |
33 | for (int k = 0; k < row; k++)
34 | {
35 | for (int l = 0; l < column; l++)
36 | {
37 | if (k == 0 && l == 0)
38 | {
39 | outputMatrix[k, l] = inputMatrix[k, l];
40 | continue;
41 | }
42 | if (k == 0)
43 | {
44 | outputMatrix[k, l] = outputMatrix[k, l - 1] + inputMatrix[k, l];
45 | continue;
46 | }
47 |
48 | if (l == 0)
49 | {
50 | outputMatrix[k, l] = outputMatrix[k - 1, l] + inputMatrix[k, l];
51 | continue;
52 | }
53 |
54 | int val1 = outputMatrix[k - 1, l];
55 | int val2 = outputMatrix[k, l - 1];
56 |
57 | if (val1 < val2)
58 | {
59 | outputMatrix[k, l] = inputMatrix[k, l] + val1;
60 | }
61 | else
62 | {
63 | outputMatrix[k, l] = inputMatrix[k, l] + val2;
64 | }
65 | }
66 | }
67 |
68 | System.Console.WriteLine(outputMatrix[row - 1, column - 1]);
69 | System.Console.ReadLine();
70 | }
71 | }
72 | }
73 |
74 | /*
75 | * Sample Input
76 | 3 4
77 | 1 3 5 8
78 | 4 2 1 7
79 | 4 3 2 3
80 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/MinimumJumpToReachEnd.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class MinimumJumpToReachEnd
10 | {
11 | public void MinimumJumpToReachEndMethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int[] iInput = Array.ConvertAll(sInput, int.Parse);
16 |
17 | int[] countArray = new int[iInput.Length];
18 | int[] jumpFrom = new int[iInput.Length];
19 |
20 | int forwardPointer = 1;
21 | int backwardPointer = 0;
22 |
23 | countArray[0] = 0;
24 | jumpFrom[0] = 0;
25 |
26 | while (forwardPointer < iInput.Length)
27 | {
28 | while (forwardPointer > backwardPointer)
29 | {
30 | if (iInput[backwardPointer] + backwardPointer >= forwardPointer)
31 | {
32 | int val1 = countArray[forwardPointer];
33 | int val2 = countArray[backwardPointer] + 1;
34 |
35 | if (val1 <= 0)
36 | {
37 | countArray[forwardPointer] = val2;
38 | jumpFrom[forwardPointer] = backwardPointer;
39 | }
40 | else
41 | {
42 | if (val1 > val2)
43 | {
44 | countArray[forwardPointer] = val2;
45 | jumpFrom[forwardPointer] = backwardPointer;
46 | }
47 | }
48 | backwardPointer++;
49 | }
50 | else
51 | {
52 | backwardPointer++;
53 | }
54 | }
55 | forwardPointer++;
56 | backwardPointer = 0;
57 | }
58 |
59 | System.Console.WriteLine(countArray[iInput.Length - 1]);
60 | System.Console.ReadLine();
61 | }
62 | }
63 | }
64 |
65 | /*
66 | * Sample Input
67 | 2 3 1 1 2 4 2 0 1 1
68 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/OptimalStrategyGamePickFromEndsOfArray.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | //In Progress
10 | class OptimalStrategyGamePickFromEndsOfArray
11 | {
12 | public void OptimalStrategyGamePickFromEndsOfArrayMethod()
13 | {
14 | string inputArray = Console.ReadLine();
15 | string[] sInputArray = inputArray.Split(' ');
16 | int[] iInputArray = Array.ConvertAll(sInputArray, int.Parse);
17 |
18 | int length = iInputArray.Length;
19 | int[,][,] adjacencyMatrix = new int[length,length][,];
20 | int distance = 1;
21 |
22 | for (int i = 0; i < length; i++)
23 | {
24 | for (int j = 0; j < length; j++)
25 | {
26 | if (i == j)
27 | {
28 | adjacencyMatrix[i, j] = new int[1, 2];
29 | adjacencyMatrix[i, j][0, 0] = iInputArray[i];
30 | adjacencyMatrix[i, j][0, 1] = 0;
31 | }
32 | }
33 | }
34 |
35 | while (distance < length)
36 | {
37 | for (int i = 0; i < length; i++)
38 | {
39 | for (int j = 0; j < length; j++)
40 | {
41 | if (i < j && (i + distance) == j)
42 | {
43 | int val1 = iInputArray[i] + adjacencyMatrix[i + 1, j][0, 1];
44 | int val2 = iInputArray[j] + adjacencyMatrix[i, j - 1][0, 1];
45 | int max = val1 > val2 ? val1 : val2;
46 |
47 | int leftOver = 0;
48 |
49 | adjacencyMatrix[i, j] = new int[1, 2];
50 |
51 | if (val1 > val2)
52 | {
53 | adjacencyMatrix[i, j][0, 0] = val1;
54 | adjacencyMatrix[i, j][0, 1] = leftOver;
55 | //adjacencyMatrix[i, j][0, 0] = max;
56 | //adjacencyMatrix[i, j][0, 1] = adjacencyMatrix[i+1, j][0, 1];
57 | }
58 | else
59 | {
60 | adjacencyMatrix[i, j][0, 0] = val2;
61 | adjacencyMatrix[i, j][0, 1] = leftOver;
62 | //adjacencyMatrix[i, j][0, 0] = max;
63 | //adjacencyMatrix[i, j][0, 1] = adjacencyMatrix[i, j-1][0, 1];
64 | }
65 | }
66 | }
67 | }
68 | distance++;
69 | }
70 | }
71 | }
72 | }
73 |
74 | /*
75 | Sample Input
76 | 3 9 1 2
77 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using System.ComponentModel;
7 | using System.Xml.Serialization;
8 | using QuickGraph;
9 |
10 | // Copy code in any of the .cs class and execute from here or
11 | // Create an instance of the class and call its method.
12 | namespace AlgorithmsMadeEasy
13 | {
14 | class Program
15 | {
16 | static void Main(string[] args)
17 | {
18 |
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("AlgorithmsMadeEasy")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("AlgorithmsMadeEasy")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("45db59b7-268c-4c28-96ed-2f67e03134a2")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/QuickSort.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class QuickSort
10 | {
11 | public void QuickSortMethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int[] iInput = Array.ConvertAll(sInput, int.Parse);
16 |
17 | QuickSortNow(iInput, 0, iInput.Length - 1);
18 |
19 | for (int i = 0; i < iInput.Length; i++)
20 | {
21 | Console.Write(iInput[i] + " ");
22 | }
23 |
24 | Console.ReadLine();
25 | }
26 |
27 | public static void QuickSortNow(int[] iInput, int start, int end)
28 | {
29 | if (start < end)
30 | {
31 | int pivot = Partition(iInput, start, end);
32 | QuickSortNow(iInput, start, pivot - 1);
33 | QuickSortNow(iInput, pivot + 1, end);
34 | }
35 | }
36 |
37 | public static int Partition(int[] iInput, int start, int end)
38 | {
39 | int pivot = iInput[end];
40 | int pIndex = start;
41 |
42 | for (int i = start; i < end; i++)
43 | {
44 | if (iInput[i] <= pivot)
45 | {
46 | int temp = iInput[i];
47 | iInput[i] = iInput[pIndex];
48 | iInput[pIndex] = temp;
49 | pIndex++;
50 | }
51 | }
52 |
53 | int anotherTemp = iInput[pIndex];
54 | iInput[pIndex] = iInput[end];
55 | iInput[end] = anotherTemp;
56 | return pIndex;
57 | }
58 | }
59 | }
60 |
61 | /*
62 | * Sample Input
63 | 6 5 3 2 8
64 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/SelectionSort.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class SelectionSort
10 | {
11 | public void SelectionSortMethod()
12 | {
13 | var input = System.Console.ReadLine();
14 | string[] sInput = input.Split(' ');
15 | int[] iInput = Array.ConvertAll(sInput, int.Parse);
16 |
17 | for (int i = 0; i < iInput.Length; i++)
18 | {
19 | int minIndex = 0;
20 | bool flagChanged = false;
21 | for (int j = i; j < iInput.Length - 1; j++)
22 | {
23 | if (iInput[j] > iInput[j + 1])
24 | {
25 | minIndex = j + 1;
26 | flagChanged = true;
27 | }
28 | }
29 | if (flagChanged)
30 | {
31 | int temp = iInput[i];
32 | iInput[i] = iInput[minIndex];
33 | iInput[minIndex] = temp;
34 | }
35 | }
36 |
37 | for (int k = 0; k < iInput.Length; k++)
38 | {
39 | Console.Write(iInput[k] + " ");
40 | }
41 | Console.Read();
42 | }
43 | }
44 | }
45 |
46 | /*
47 | * Sample Input
48 | 6 5 3 2 8
49 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/StaircaseProblemFibonacciSeries.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class StaircaseProblemFibonacciSeries
10 | {
11 | private static int longestStep;
12 | private static int iTotalSteps;
13 |
14 | public void StaircaseProblemFibonacciSeriesMethod()
15 | {
16 | var n = System.Console.ReadLine();
17 | longestStep = int.Parse(n);//This would be 2
18 |
19 | var totalSteps = System.Console.ReadLine();
20 | iTotalSteps = int.Parse(totalSteps);
21 |
22 | int output = SolveStaircaseProblem(iTotalSteps);
23 | System.Console.WriteLine(output);
24 | System.Console.ReadLine();
25 | }
26 |
27 | public static int SolveStaircaseProblem(int n)
28 | {
29 | if (n == 0)
30 | {
31 | return 0;
32 | }
33 | else if (n == 1)
34 | {
35 | return 1;
36 | }
37 | else if (n == 2)
38 | {
39 | return 2;
40 | }
41 |
42 | return SolveStaircaseProblem(n - 1) + SolveStaircaseProblem(n - 2);
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/WeightedJobScheduling.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace AlgorithmsMadeEasy
8 | {
9 | class WeightedJobScheduling
10 | {
11 | public void WeightedJobSchedulingMethod()
12 | {
13 | var jobCount = System.Console.ReadLine().Trim();
14 | int iJobCount = int.Parse(jobCount);
15 |
16 | int[,] jobDetails = new int[iJobCount, 2];
17 | int[] costDetails = new int[iJobCount];
18 | int[] tempArray = new int[iJobCount];
19 |
20 | for (int i = 0; i < iJobCount; i++)
21 | {
22 | var value = System.Console.ReadLine();
23 | string[] sValue = value.Split(' ');
24 | int[] iValue = Array.ConvertAll(sValue, int.Parse);
25 |
26 | jobDetails[i, 0] = iValue[0];
27 | jobDetails[i, 1] = iValue[1];
28 | costDetails[i] = iValue[2];
29 | tempArray[i] = iValue[2];
30 | }
31 |
32 | int forwardPointer = 1;
33 | int backwardPointer = 0;
34 |
35 | while (forwardPointer < iJobCount)
36 | {
37 | if (jobDetails[backwardPointer, 1] > jobDetails[forwardPointer, 0])
38 | {
39 | forwardPointer++;
40 | backwardPointer = 0;
41 | }
42 | else
43 | {
44 | tempArray[forwardPointer] = costDetails[forwardPointer] + tempArray[backwardPointer];
45 | backwardPointer++;
46 | }
47 | }
48 |
49 | int maxjob = tempArray[0];
50 |
51 | for (int i = 1; i < tempArray.Length; i++)
52 | {
53 | if (tempArray[i] > maxjob)
54 | {
55 | maxjob = tempArray[i];
56 | }
57 | }
58 |
59 | System.Console.WriteLine(maxjob);
60 | System.Console.ReadLine();
61 | }
62 | }
63 | }
64 |
65 | /*
66 | * Input Details:
67 | 6
68 | 1 3 5
69 | 2 5 6
70 | 4 6 5
71 | 6 7 4
72 | 5 8 11
73 | 7 9 2
74 | */
75 |
76 | /*
77 | * Note:
78 | The job end time is already sorted by non decreasing order.
79 | */
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.exe
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.exe.orig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.exe.orig
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.pdb
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.pdb.orig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.pdb.orig
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.vshost.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.vshost.exe
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.vshost.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/AlgorithmsMadeEasy.vshost.exe.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Data.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Data.dll
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Data.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | QuickGraph.Data
5 |
6 |
7 |
8 |
9 | An algorithm that renders a DataSet graph to the Graphviz DOT format.
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Graphviz.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Graphviz.dll
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Serialization.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/QuickGraph.Serialization.dll
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/bin/Debug/QuickGraph.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/bin/Debug/QuickGraph.dll
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csproj.CopyComplete:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csproj.CopyComplete
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csproj.FileListAbsolute.txt.orig:
--------------------------------------------------------------------------------
1 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\AlgorithmsMadeEasy.exe.config
2 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\AlgorithmsMadeEasy.exe
3 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\AlgorithmsMadeEasy.pdb
4 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\obj\Debug\AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache
5 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\obj\Debug\AlgorithmsMadeEasy.exe
6 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\obj\Debug\AlgorithmsMadeEasy.pdb
7 | <<<<<<< HEAD
8 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.Data.dll
9 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.dll
10 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.Graphviz.dll
11 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.Serialization.dll
12 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.xml
13 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.Data.xml
14 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.Graphviz.xml
15 | C:\E\algorithmsmadeeasy\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\QuickGraph.Serialization.xml
16 | =======
17 | D:\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\AlgorithmsMadeEasy.exe.config
18 | D:\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\AlgorithmsMadeEasy.exe
19 | D:\AlgorithmsMadeEasy\AlgorithmsMadeEasy\bin\Debug\AlgorithmsMadeEasy.pdb
20 | D:\AlgorithmsMadeEasy\AlgorithmsMadeEasy\obj\Debug\AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache
21 | D:\AlgorithmsMadeEasy\AlgorithmsMadeEasy\obj\Debug\AlgorithmsMadeEasy.exe
22 | D:\AlgorithmsMadeEasy\AlgorithmsMadeEasy\obj\Debug\AlgorithmsMadeEasy.pdb
23 | >>>>>>> 172e081f7b858db455b0e53ef410036ca77456ec
24 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache.orig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.csprojResolveAssemblyReference.cache.orig
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.exe
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.exe.orig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.exe.orig
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.pdb
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.pdb.orig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/AlgorithmsMadeEasy.pdb.orig
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 2df79ac0040536a5218ddd34c90dd1f6f1127f54
2 |
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache.orig:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache.orig
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/AlgorithmsMadeEasy/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/AlgorithmsMadeEasy/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/AbstractFactory/AbstractFactory.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.AbstractFactoryDesignPattern
8 | {
9 | public interface IMode
10 | {
11 | void On();
12 | }
13 |
14 | public class NormalMode : IMode
15 | {
16 | public void On()
17 | {
18 | Console.WriteLine("On in normal mode.");
19 | }
20 | }
21 |
22 | public class SafeMode : IMode
23 | {
24 | public void On()
25 | {
26 | Console.WriteLine("On in safe mode.");
27 | }
28 | }
29 |
30 | public abstract class AbstractFactory
31 | {
32 | public abstract IMode Mode();
33 | }
34 |
35 | public class NormalFactory : AbstractFactory
36 | {
37 | public override IMode Mode()
38 | {
39 | return new NormalMode();
40 | }
41 | }
42 |
43 | public class SafeFactory : AbstractFactory
44 | {
45 | public override IMode Mode()
46 | {
47 | return new SafeMode();
48 | }
49 | }
50 |
51 | public class FactoryProducer
52 | {
53 | public static AbstractFactory GetFactory(bool isNormal)
54 | {
55 | if (isNormal)
56 | {
57 | return new NormalFactory();
58 | }
59 |
60 | return new SafeFactory();
61 | }
62 | }
63 | }
64 |
65 | /*
66 | AbstractFactory factory = FactoryProducer.GetFactory(false);
67 |
68 | IMode mode = factory.Mode();
69 | mode.On();
70 |
71 | Console.ReadLine();
72 | */
73 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/ActiveObject/ActiveObject.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Concurrent;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading;
7 | using System.Threading.Tasks;
8 |
9 | namespace DesignPatternImplementation.ActiveObjectDesignPattern
10 | {
11 | public class ActiveObject
12 | {
13 | public class MyTask
14 | {
15 | public int priority;
16 | public string name;
17 | public MyTask(string name, int priority)
18 | {
19 | this.name = name;
20 | this.priority = priority;
21 | }
22 | }
23 |
24 | ConcurrentQueue dispatchQueue = new ConcurrentQueue();
25 |
26 | public void Do(string name, int priority)
27 | {
28 | dispatchQueue.Enqueue(new MyTask(name, priority));
29 |
30 | new Thread(() =>
31 | {
32 | MyTask task;
33 | var isSuccess = dispatchQueue.TryDequeue(out task);
34 | Console.WriteLine("Executing: " + task.name);
35 | }).Start();
36 | }
37 | }
38 | }
39 |
40 | /*
41 | var activeObject = new ActiveObject();
42 |
43 | Thread t1 = new Thread(() => activeObject.Do("1", 1));
44 | Thread t2 = new Thread(() => activeObject.Do("2", 2));
45 | Thread t3 = new Thread(() => activeObject.Do("3", 3));
46 |
47 | t1.Start();
48 | t2.Start();
49 | t3.Start();
50 |
51 | Console.ReadLine();
52 | */
53 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Adapter/Adapter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Adapter
8 | {
9 | public interface ITarget
10 | {
11 | string GetInformation();
12 | }
13 |
14 | class Adaptee
15 | {
16 | public string GetMoreInformation()
17 | {
18 | return "More Information";
19 | }
20 | }
21 |
22 | class UniversalAdapter : ITarget
23 | {
24 | private readonly Adaptee _adaptee;
25 |
26 | public UniversalAdapter(Adaptee adaptee)
27 | {
28 | _adaptee = adaptee;
29 | }
30 | public string GetInformation()
31 | {
32 | return this._adaptee.GetMoreInformation();
33 | }
34 | }
35 | }
36 |
37 | /*
38 | var adaptee = new Adaptee();
39 | var target = new UniversalAdapter(adaptee);
40 |
41 | Console.WriteLine(target.GetInformation());
42 |
43 | Console.ReadLine();
44 | */
45 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Bridge/Bridge.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Bridge
8 | {
9 | public interface IDownloaderAbstraction
10 | {
11 | public object Download(string url);
12 | public bool Save(object obj);
13 | }
14 |
15 | public interface IDownloaderImplementation
16 | {
17 | public object Download(string url);
18 | public bool Save(object obj);
19 | }
20 |
21 | public class DownloaderAbstractionImpl : IDownloaderAbstraction
22 | {
23 | private readonly IDownloaderImplementation _provider;
24 |
25 | public DownloaderAbstractionImpl(IDownloaderImplementation provider)
26 | {
27 | this._provider = provider;
28 | }
29 |
30 | public object Download(string url)
31 | {
32 | return _provider.Download(url);
33 | }
34 |
35 | public bool Save(object obj)
36 | {
37 | return _provider.Save(obj);
38 | }
39 | }
40 |
41 | public class LinuxDownloaderImpl : IDownloaderImplementation
42 | {
43 | public object Download(string url)
44 | {
45 | return new object();
46 | }
47 |
48 | public bool Save(object obj)
49 | {
50 | Console.WriteLine("Downloaded file in Linux!");
51 | return true;
52 | }
53 | }
54 |
55 | public class WindowsDownloaderImpl : IDownloaderImplementation
56 | {
57 | public object Download(string url)
58 | {
59 | return new object();
60 | }
61 |
62 | public bool Save(object obj)
63 | {
64 | Console.WriteLine("Downloaded file in Windows!");
65 | return true;
66 | }
67 | }
68 | }
69 | /*
70 | string os = "windows";
71 |
72 | IDownloaderAbstraction handle = null;
73 |
74 | switch (os)
75 | {
76 | case "windows":
77 | handle = new DownloaderAbstractionImpl(new WindowsDownloaderImpl());
78 | break;
79 | case "linux":
80 | handle = new DownloaderAbstractionImpl(new LinuxDownloaderImpl());
81 | break;
82 | }
83 |
84 | object obj = handle.Download("some url");
85 | handle.Save(obj);
86 |
87 | Console.ReadLine();
88 | */
89 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Builder/Builder.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Net.Mail;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace DesignPatternImplementation.Builder
9 | {
10 | public class SMS
11 | {
12 | public string to;
13 | public string message;
14 |
15 | public SMS(string to, string message)
16 | {
17 | this.to = to;
18 | this.message = message;
19 | }
20 |
21 | public void Send()
22 | {
23 | // telecommunication
24 | Console.WriteLine(message + " sent to " + to);
25 | }
26 |
27 | public class SMSBuilder
28 | {
29 | public string recipient;
30 | public string message;
31 |
32 | public SMSBuilder AddRecipient(string name)
33 | {
34 | this.recipient = name;
35 | return this;
36 | }
37 |
38 | public SMSBuilder AddMessage(string message)
39 | {
40 | this.message = message;
41 | return this;
42 | }
43 |
44 | public SMS Build()
45 | {
46 | return new SMS(recipient, message);
47 | }
48 | }
49 | }
50 | }
51 | /*
52 | var sms = new SMS.SMSBuilder()
53 | .AddRecipient("9999999999")
54 | .AddMessage("Hello")
55 | .Build();
56 | sms.Send();
57 |
58 | Console.ReadLine();
59 | */
60 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/ChainOfResponsibilities/ChainOfResponsibilities.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.ChainOfResponsibilities
8 | {
9 | public interface Chain
10 | {
11 | public abstract void SetNext(Chain nextInChain);
12 | public abstract void Process(Number request);
13 | }
14 |
15 | public class Number
16 | {
17 | private int number;
18 |
19 | public Number(int number)
20 | {
21 | this.number = number;
22 | }
23 |
24 | public int GetNumber()
25 | {
26 | return number;
27 | }
28 | }
29 |
30 | public class PositiveChain : Chain
31 | {
32 | private Chain chain;
33 |
34 | public void Process(Number request)
35 | {
36 | if (request.GetNumber() > 0)
37 | {
38 | Console.WriteLine("I'm Positive");
39 | }
40 | else
41 | {
42 | chain.Process(request);
43 | }
44 | }
45 |
46 | public void SetNext(Chain nextInChain)
47 | {
48 | chain = nextInChain;
49 | }
50 | }
51 |
52 | public class ZeroChain : Chain
53 | {
54 | private Chain chain;
55 |
56 | public void Process(Number request)
57 | {
58 | if (request.GetNumber() == 0)
59 | {
60 | Console.WriteLine("I'm Zero");
61 | }
62 | else
63 | {
64 | chain.Process(request);
65 | }
66 | }
67 |
68 | public void SetNext(Chain nextInChain)
69 | {
70 | chain = nextInChain;
71 | }
72 | }
73 |
74 | public class NegativeChain : Chain
75 | {
76 | private Chain chain;
77 |
78 | public void Process(Number request)
79 | {
80 | if (request.GetNumber() < 0)
81 | {
82 | Console.WriteLine("I'm Negative");
83 | }
84 | else
85 | {
86 | chain.Process(request);
87 | }
88 | }
89 |
90 | public void SetNext(Chain nextInChain)
91 | {
92 | chain = nextInChain;
93 | }
94 | }
95 | }
96 | /*
97 | * var c = new PositiveChain();
98 | var c1 = new NegativeChain();
99 | var c2 = new ZeroChain();
100 | c.SetNext(c1);
101 | c1.SetNext(c2);
102 |
103 | c.Process(new Number(1));
104 | c.Process(new Number(-1));
105 | c.Process(new Number(0));
106 | c.Process(new Number(1000));
107 |
108 | Console.ReadLine();
109 | */
110 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Command/AddTextCommand.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Command
8 | {
9 | public class AddTextCommand : BaseCommand
10 | {
11 | public override void Execute(string text)
12 | {
13 | sb.Append(text);
14 | Entries.Add(text);
15 | }
16 |
17 | public override void UnExecute()
18 | {
19 | throw new NotImplementedException();
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Command/BaseCommand.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Command
8 | {
9 | public interface IAppCommand
10 | {
11 | StringBuilder sb { get; set; }
12 | void Execute(string text);
13 | void UnExecute();
14 | }
15 |
16 | public abstract class BaseCommand : IAppCommand
17 | {
18 | public StringBuilder sb { get; set; }
19 | protected readonly List Entries = new List();
20 | public abstract void Execute(string text);
21 | public abstract void UnExecute();
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Command/Controller.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Command
8 | {
9 | public class Controller
10 | {
11 | private readonly List _commands = new List();
12 | private readonly StringBuilder _stringBuilder = new StringBuilder();
13 |
14 | public int AddCommand(IAppCommand cmd)
15 | {
16 | cmd.sb = _stringBuilder;
17 | _commands.Add(cmd);
18 | return _commands.IndexOf(cmd);
19 | }
20 |
21 | public IAppCommand GetCommandAt(int index)
22 | {
23 | return _commands[index];
24 | }
25 |
26 | public string GetBuiltString()
27 | {
28 | return _stringBuilder.ToString();
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/CommandDP/Command.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.CommandDP
8 | {
9 | public interface ICommand
10 | {
11 | string Name { get; }
12 | void Execute();
13 | }
14 |
15 | public class StartCommand : ICommand
16 | {
17 | public string Name
18 | {
19 | get
20 | {
21 | return "Start";
22 | }
23 | }
24 |
25 | public void Execute()
26 | {
27 | Console.WriteLine("Started");
28 | }
29 | }
30 |
31 | public class StopCommand : ICommand
32 | {
33 | public string Name
34 | {
35 | get
36 | {
37 | return "Stop";
38 | }
39 | }
40 |
41 | public void Execute()
42 | {
43 | Console.WriteLine("Stopped");
44 | }
45 | }
46 |
47 | public class Invoker
48 | {
49 | ICommand cmd = null;
50 |
51 | public ICommand GetCommand(string action)
52 | {
53 | switch (action)
54 | {
55 | case "Start":
56 | cmd = new StartCommand();
57 | break;
58 | case "Stop":
59 | cmd = new StopCommand();
60 | break;
61 | }
62 |
63 | return cmd;
64 | }
65 | }
66 | }
67 |
68 | /*
69 | * Invoker i = new Invoker();
70 | ICommand c = i.GetCommand("Start");
71 | c.Execute();
72 |
73 | ICommand c1 = i.GetCommand("Stop");
74 | c1.Execute();
75 | */
76 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Composite/Composite.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Composite
8 | {
9 | public interface IEmployee
10 | {
11 | public void DisplayEmployee();
12 | }
13 |
14 | class Developer : IEmployee
15 | {
16 | private string _name;
17 |
18 | public Developer(string name)
19 | {
20 | _name = name;
21 | }
22 |
23 | public void DisplayEmployee()
24 | {
25 | Console.WriteLine(_name + " is a Developer");
26 | }
27 | }
28 |
29 | class Designer : IEmployee
30 | {
31 | private string _name;
32 |
33 | public Designer(string name)
34 | {
35 | _name = name;
36 | }
37 |
38 | public void DisplayEmployee()
39 | {
40 | Console.WriteLine(_name + " is a Designer");
41 | }
42 | }
43 |
44 | class Directory : IEmployee
45 | {
46 | private List directory = new List();
47 |
48 | public void DisplayEmployee()
49 | {
50 | foreach(var d in directory)
51 | {
52 | d.DisplayEmployee();
53 | }
54 | }
55 |
56 | public void Add(IEmployee e)
57 | {
58 | directory.Add(e);
59 | }
60 |
61 | public void Remove(IEmployee e)
62 | {
63 | directory.Remove(e);
64 | }
65 | }
66 | }
67 | /*
68 | var developer = new Developer("Bharath");
69 | var disigner = new Designer("Sudarshan");
70 |
71 | var directory = new Directory();
72 | directory.Add(developer);
73 | directory.Add(disigner);
74 |
75 | directory.DisplayEmployee();
76 | */
77 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Decorator/Decorator.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Decorator
8 | {
9 | public abstract class Pizza
10 | {
11 | public string name = "No Name";
12 |
13 | public virtual string GetName()
14 | {
15 | return name;
16 | }
17 |
18 | public abstract int Cost();
19 | }
20 |
21 | public abstract class Decorator : Pizza
22 | {
23 | public abstract new string GetName();
24 | }
25 |
26 | public class FarmHouse : Pizza
27 | {
28 | public FarmHouse()
29 | {
30 | name = "FarmHouse";
31 | }
32 |
33 | public override int Cost()
34 | {
35 | return 200;
36 | }
37 | }
38 |
39 | public class Margherita : Pizza
40 | {
41 | public Margherita()
42 | {
43 | name = "Margherita";
44 | }
45 |
46 | public override int Cost()
47 | {
48 | return 100;
49 | }
50 | }
51 |
52 | public class Tomato : Decorator
53 | {
54 | private readonly Pizza _pizza;
55 |
56 | public Tomato(Pizza pizza)
57 | {
58 | _pizza = pizza;
59 | }
60 |
61 | public override int Cost()
62 | {
63 | return _pizza.Cost() + 50;
64 | }
65 |
66 | public override string GetName()
67 | {
68 | return _pizza.GetName() + ", Tomato";
69 | }
70 | }
71 | }
72 | /*
73 | var pizza = new Margherita();
74 |
75 | var iWantMore = new Tomato(pizza);
76 |
77 | Console.WriteLine(iWantMore.GetName() + " " + iWantMore.Cost());
78 |
79 | Console.ReadLine();
80 | */
81 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Facade/Facade.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Facade
8 | {
9 | public interface IBuild
10 | {
11 | void Construct();
12 | }
13 |
14 | public class Building : IBuild
15 | {
16 | public void Construct()
17 | {
18 | Console.WriteLine("Building Constructed");
19 | }
20 | }
21 |
22 | public class Table : IBuild
23 | {
24 | public void Construct()
25 | {
26 | Console.WriteLine("Table Constructed");
27 | }
28 | }
29 |
30 | public class FacadeMaker
31 | {
32 | private IBuild _building;
33 | private IBuild _table;
34 |
35 | public FacadeMaker()
36 | {
37 | _building = new Building();
38 | _table = new Table();
39 | }
40 |
41 | public void BuildBuilding()
42 | {
43 | _building.Construct();
44 | }
45 |
46 | public void BuildTable()
47 | {
48 | _table.Construct();
49 | }
50 | }
51 | }
52 |
53 | /*
54 | var facade = new FacadeMaker();
55 | facade.BuildBuilding();
56 | facade.BuildTable();
57 |
58 | Console.ReadLine();
59 | */
60 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Factory/Factory.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Factory
8 | {
9 | public interface ILevel
10 | {
11 | void Play();
12 | }
13 |
14 | public class Mountain : ILevel
15 | {
16 | public void Play()
17 | {
18 | Console.WriteLine("Construct and play in mountain");
19 | }
20 | }
21 |
22 | public class Water : ILevel
23 | {
24 | public void Play()
25 | {
26 | Console.WriteLine("Construct and play in water");
27 | }
28 | }
29 |
30 | public class Terrain : ILevel
31 | {
32 | public void Play()
33 | {
34 | Console.WriteLine("Construct and play in terrain");
35 | }
36 | }
37 |
38 | public class GameFactory
39 | {
40 | public ILevel GetLevel(string level)
41 | {
42 | if(level == "mountain")
43 | {
44 | return new Mountain();
45 | }else if (level == "water")
46 | {
47 | return new Water();
48 | }
49 |
50 | return new Terrain();
51 | }
52 | }
53 | }
54 |
55 | /*
56 | var factory = new GameFactory();
57 |
58 | ILevel level1 = factory.GetLevel("terrain");
59 | level1.Play();
60 |
61 | ILevel level2 = factory.GetLevel("water");
62 | level2.Play();
63 |
64 | ILevel level3 = factory.GetLevel("mountain");
65 | level3.Play();
66 |
67 | Console.ReadLine();
68 | */
69 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Flyweight/Flyweight.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Flyweight
8 | {
9 | public interface IVehicle
10 | {
11 | public void Drive();
12 | }
13 |
14 | public class FlyweightCar : IVehicle
15 | {
16 | private string _color;
17 | private string _name;
18 |
19 | public FlyweightCar(string name)
20 | {
21 | _name = name;
22 | }
23 |
24 | public void Drive()
25 | {
26 | Console.WriteLine("Drive your " + _color + " " + _name);
27 | }
28 |
29 | public void SetColor(string color)
30 | {
31 | this._color = color;
32 | }
33 | }
34 |
35 | public class CarFactory
36 | {
37 | private static readonly Dictionary cars =
38 | new Dictionary();
39 |
40 | public FlyweightCar GetCar(string name)
41 | {
42 | if (cars.ContainsKey(name))
43 | {
44 | return cars[name];
45 | }
46 |
47 | var car = new FlyweightCar(name);
48 | cars.Add(name, car);
49 | return car;
50 | }
51 |
52 | public int GetCount()
53 | {
54 | return cars.Count();
55 | }
56 | }
57 | }
58 | /*
59 | var factory = new CarFactory();
60 | var car1 = factory.GetCar("Jaguar F-Type");
61 | car1.SetColor("Grey");
62 | car1.Drive();
63 |
64 | var car2 = factory.GetCar("Jaguar F-Type");
65 | car2.SetColor("White");
66 | car2.Drive();
67 |
68 | var car3 = factory.GetCar("Jaguar XE");
69 | car3.SetColor("Grey");
70 | car3.Drive();
71 |
72 | Console.WriteLine("Objects Created: " + factory.GetCount());
73 | */
74 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Interpreter/Interpreter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Interpreter
8 | {
9 | public class Context
10 | {
11 | private DateTime date;
12 | private string expression;
13 |
14 | public DateTime Date { get => date; set => date = value; }
15 | public string Expression { get => expression; set => expression = value; }
16 | }
17 |
18 | public abstract class AbstractExpression
19 | {
20 | public abstract void Evaluate(Context context);
21 | }
22 |
23 | public class DayExpression : AbstractExpression
24 | {
25 | public override void Evaluate(Context context)
26 | {
27 | string s = context.Expression;
28 | var d = context.Date.Day;
29 | string day = s.Replace("DD", d.ToString());
30 | context.Expression = day;
31 | }
32 | }
33 |
34 | public class MonthExpression : AbstractExpression
35 | {
36 | public override void Evaluate(Context context)
37 | {
38 | string s = context.Expression;
39 | var m = context.Date.Month;
40 | string month = s.Replace("MM", m.ToString());
41 | context.Expression = month;
42 | }
43 | }
44 |
45 | public class YearExpression : AbstractExpression
46 | {
47 | public override void Evaluate(Context context)
48 | {
49 | string s = context.Expression;
50 | var y = context.Date.Year;
51 | string year = s.Replace("YYYY", y.ToString());
52 | context.Expression = year;
53 | }
54 | }
55 | }
56 |
57 | /*
58 | * var c = new Context();
59 | c.Expression = "DD/MM/YYYY";
60 | c.Date = DateTime.Now;
61 |
62 | var e = new DayExpression();
63 | var m = new MonthExpression();
64 | var y = new YearExpression();
65 | e.Evaluate(c);
66 | m.Evaluate(c);
67 | y.Evaluate(c);
68 | Console.WriteLine(c.Expression);
69 |
70 | c.Expression = "MM/DD/YYYY";
71 | c.Date = DateTime.Now;
72 | e.Evaluate(c);
73 | m.Evaluate(c);
74 | y.Evaluate(c);
75 | Console.WriteLine(c.Expression);
76 |
77 | Console.ReadLine();
78 | */
79 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Iterator/Iterator.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Iterator
8 | {
9 | public interface Iterator
10 | {
11 | public bool HasNext();
12 | public Object Next();
13 | }
14 |
15 | public interface Container
16 | {
17 | public Iterator GetIterator();
18 | }
19 |
20 | public class NameRepository : Container
21 | {
22 | private static string[] names = { "bharath", "kumar", "ganesh" };
23 |
24 | public Iterator GetIterator()
25 | {
26 | return new NameIterator();
27 | }
28 |
29 | private class NameIterator : Iterator
30 | {
31 | int index;
32 | public bool HasNext()
33 | {
34 | if (index < names.Length)
35 | {
36 | return true;
37 | }
38 | return false;
39 | }
40 |
41 | public object Next()
42 | {
43 | if (HasNext())
44 | {
45 | return names[index++];
46 | }
47 |
48 | return null;
49 | }
50 | }
51 | }
52 | }
53 |
54 | /*
55 | var repo = new NameRepository();
56 | var i = repo.GetIterator();
57 | while (i.HasNext())
58 | {
59 | Console.WriteLine(i.Next());
60 | }
61 | */
62 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Mediator/Mediator.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Mediator
8 | {
9 | public interface Mediator
10 | {
11 | public void BroadcastMessage(string msg, User user);
12 | void AddUser(User user);
13 | }
14 |
15 | public abstract class User
16 | {
17 | protected Mediator _mediator;
18 | protected string _name;
19 |
20 | public User(Mediator m, string name)
21 | {
22 | _mediator = m;
23 | _name = name;
24 | }
25 | public abstract void Send(String msg);
26 |
27 | public abstract void Receive(String msg);
28 | }
29 |
30 | public class MediatorImpl : Mediator
31 | {
32 | private List users;
33 |
34 | public MediatorImpl()
35 | {
36 | this.users = new List();
37 | }
38 |
39 | public void AddUser(User user)
40 | {
41 | this.users.Add(user);
42 | }
43 |
44 | public void BroadcastMessage(string msg, User user)
45 | {
46 | foreach(var userObj in users)
47 | {
48 | if (userObj != user)
49 | userObj.Receive(msg);
50 | }
51 | }
52 | }
53 |
54 | public class UserImpl : User
55 | {
56 | public UserImpl(Mediator m, string name): base(m, name)
57 | { }
58 |
59 | public override void Receive(string msg)
60 | {
61 | Console.WriteLine(this._name + ": " + msg);
62 | }
63 |
64 | public override void Send(string msg)
65 | {
66 | _mediator.BroadcastMessage(msg, this);
67 | }
68 | }
69 | }
70 | /*
71 | var mediatorObj = new MediatorImpl();
72 | var u1 = new UserImpl(mediatorObj, "Bharath");
73 | var u2 = new UserImpl(mediatorObj, "Kumar");
74 | var u3 = new UserImpl(mediatorObj, "Ganesh");
75 | mediatorObj.AddUser(u1);
76 | mediatorObj.AddUser(u2);
77 | mediatorObj.AddUser(u3);
78 | u1.Send("Hello");
79 |
80 | u2.Send("Cool and Simple");
81 | */
82 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Memento/Memento.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Memento
8 | {
9 | //Originator, memento and caretaker
10 | public class TimeMachine
11 | {
12 | private string time;
13 |
14 | public void Set(string time)
15 | {
16 | Console.WriteLine("Setting time to " + time);
17 | this.time = time;
18 | }
19 |
20 | public Memento SaveToMemento()
21 | {
22 | Console.WriteLine("Saving time to memento");
23 | return new Memento(time);
24 | }
25 |
26 | public void Restore(Memento m)
27 | {
28 | time = m.Get();
29 | Console.WriteLine("Time restored from memento: " + time);
30 | }
31 |
32 |
33 | public class Memento
34 | {
35 | private readonly string _time;
36 |
37 | public Memento(string time)
38 | {
39 | _time = time;
40 | }
41 |
42 | public string Get()
43 | {
44 | return _time;
45 | }
46 | }
47 |
48 | }
49 | }
50 | /*
51 | //The names of some variable is cut shot to focus on concepts than standards.
52 | //When you try at home or office, please follow all the coding standards.
53 |
54 | var tm = new TimeMachine();
55 | var careTaker = new List();
56 |
57 | tm.Set("1000 BC");
58 | careTaker.Add(tm.SaveToMemento());
59 |
60 | tm.Set("1000 AD");
61 | careTaker.Add(tm.SaveToMemento());
62 |
63 | tm.Set("2000 AD");
64 | careTaker.Add(tm.SaveToMemento());
65 |
66 | tm.Restore(careTaker[1]);
67 | */
68 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Observer/Observer.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Observer
8 | {
9 | public abstract class Observer
10 | {
11 | protected Subject subject;
12 | public abstract void Update();
13 | }
14 |
15 | public class Subject
16 | {
17 | private List observers = new List();
18 | private int state;
19 |
20 | public int GetState()
21 | {
22 | return state;
23 | }
24 |
25 | public void SetState(int state)
26 | {
27 | this.state = state;
28 | NotifyAllObservers();
29 | }
30 |
31 | public void NotifyAllObservers()
32 | {
33 | foreach(var observer in observers)
34 | {
35 | observer.Update();
36 | }
37 | }
38 |
39 | public void Attach(Observer observer)
40 | {
41 | observers.Add(observer);
42 | }
43 | }
44 |
45 | public class HexObserver : Observer
46 | {
47 | public readonly Subject _subject;
48 |
49 | public HexObserver(Subject subject)
50 | {
51 | this._subject = subject;
52 | this._subject.Attach(this);
53 | }
54 |
55 | public override void Update()
56 | {
57 | Console.WriteLine("The hex value is:" + _subject.GetState().ToString("X"));
58 | }
59 | }
60 |
61 | public class BinaryObserver : Observer
62 | {
63 | public readonly Subject _subject;
64 |
65 | public BinaryObserver(Subject subject)
66 | {
67 | this._subject = subject;
68 | this._subject.Attach(this);
69 | }
70 |
71 | public override void Update()
72 | {
73 | Console.WriteLine("The binary value is:" + Convert.ToString(_subject.GetState(),2));
74 | }
75 | }
76 | }
77 | /*
78 | Subject subject = new Subject();
79 | new HexObserver(subject);
80 | new BinaryObserver(subject);
81 |
82 | subject.SetState(10);
83 |
84 | subject.SetState(20);
85 | */
86 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Program.cs:
--------------------------------------------------------------------------------
1 | using DesignPatternImplementation.Adapter;
2 | using DesignPatternImplementation.Bridge;
3 | using DesignPatternImplementation.ChainOfResponsibilities;
4 | using DesignPatternImplementation.CommandDP;
5 | using DesignPatternImplementation.Composite;
6 | using DesignPatternImplementation.Decorator;
7 | using DesignPatternImplementation.Facade;
8 | using DesignPatternImplementation.Flyweight;
9 | using DesignPatternImplementation.Interpreter;
10 | using DesignPatternImplementation.Iterator;
11 | using DesignPatternImplementation.Mediator;
12 | using DesignPatternImplementation.Memento;
13 | using DesignPatternImplementation.Observer;
14 | using DesignPatternImplementation.Proxy;
15 | using DesignPatternImplementation.State;
16 | using DesignPatternImplementation.Strategy;
17 | using DesignPatternImplementation.TemplateMethod;
18 | using DesignPatternImplementation.Visitor;
19 | using DesignPatternImplementation.SingletonImpl;
20 | using System;
21 | using System.Collections.Generic;
22 | using System.Linq;
23 | using System.Text;
24 | using System.Threading.Tasks;
25 | using DesignPatternImplementation.Prototype;
26 | using DesignPatternImplementation.Factory;
27 | using DesignPatternImplementation.Builder;
28 | using DesignPatternImplementation.AbstractFactoryDesignPattern;
29 | using DesignPatternImplementation.ActiveObjectDesignPattern;
30 | using System.Threading;
31 |
32 | namespace DesignPatternImplementation
33 | {
34 | class Program
35 | {
36 | static void Main(string[] args)
37 | {
38 |
39 | Console.ReadLine();
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("DesignPatternImplementation")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("DesignPatternImplementation")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("1e40013c-fafc-4cd2-b67f-76701f10e388")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Prototype/Prototype.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Prototype
8 | {
9 | public class Language : ICloneable
10 | {
11 | private List _languages = new List();
12 |
13 | public void Load()
14 | {
15 | //This is a database operation
16 | _languages.Add("C#");
17 | _languages.Add("Java");
18 | _languages.Add("Groovy");
19 | }
20 |
21 | public List Get()
22 | {
23 | return _languages;
24 | }
25 |
26 | public void Print()
27 | {
28 | foreach(var l in _languages)
29 | {
30 | Console.Write(l + " ");
31 | }
32 | }
33 |
34 | public object Clone()
35 | {
36 | return this.MemberwiseClone();
37 | }
38 | }
39 | }
40 | /*
41 | var language = new Language();
42 | language.Load();
43 |
44 | var cloned = (Language)language.Clone();
45 | var cloneList = cloned.Get();
46 | cloneList.Add("Python");
47 |
48 | cloned.Print();
49 | */
50 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Proxy/Proxy.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Proxy
8 | {
9 | public interface IImage
10 | {
11 | public void ShowImage(bool clicked);
12 | }
13 |
14 | public class ImageProxy : IImage
15 | {
16 |
17 | private string _imagePath;
18 |
19 | private IImage _proxifiedImage;
20 |
21 | public ImageProxy(string path)
22 | {
23 | _imagePath = path;
24 | }
25 | public void ShowImage(bool clicked)
26 | {
27 | if (clicked)
28 | {
29 | _proxifiedImage = new ActualImage(_imagePath);
30 | _proxifiedImage.ShowImage(true);
31 | }
32 | else
33 | {
34 | Console.WriteLine("Showing thumbnail of " + _imagePath);
35 | }
36 | }
37 | }
38 |
39 | public class ActualImage : IImage
40 | {
41 | private string _path;
42 |
43 | public ActualImage(string path)
44 | {
45 | _path = path;
46 | LoadHighResolutionImage(path);
47 | }
48 |
49 | private void LoadHighResolutionImage(string path)
50 | {
51 | Console.WriteLine("Reading large image from disk to memory of " + path);
52 | }
53 | public void ShowImage(bool clicked = true)
54 | {
55 | Console.WriteLine("Render large image of " + _path);
56 | }
57 | }
58 | }
59 | /*
60 | var image1 = new ImageProxy("sample/photo1");
61 | image1.ShowImage(false);
62 |
63 | var image2 = new ImageProxy("sample/photo2");
64 | image2.ShowImage(true);
65 | */
66 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Singleton/Singleton.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.SingletonImpl
8 | {
9 | public sealed class Singleton
10 | {
11 | Singleton() { }
12 |
13 | private static readonly object padlock = new object();
14 | private static Singleton instance = null;
15 |
16 | public static Singleton Instance
17 | {
18 | get
19 | {
20 | lock (padlock)
21 | {
22 | if(instance == null)
23 | {
24 | instance = new Singleton();
25 | Console.WriteLine("Object Created");
26 | }
27 | else
28 | {
29 | Console.WriteLine("Returned Created Object");
30 | }
31 |
32 | return instance;
33 | }
34 | }
35 | }
36 | }
37 | }
38 |
39 | /*
40 | var instance = Singleton.Instance;
41 | var instance1 = Singleton.Instance;
42 | var instance2 = Singleton.Instance;
43 | */
44 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/State/State.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.State
8 | {
9 | public interface IState
10 | {
11 | public void DoAction();
12 | }
13 |
14 | public class TVOn : IState
15 | {
16 | public void DoAction()
17 | {
18 | Console.WriteLine("TV is on");
19 | }
20 | }
21 |
22 | public class TVOff : IState
23 | {
24 | public void DoAction()
25 | {
26 | Console.WriteLine("TV is off");
27 | }
28 | }
29 |
30 | public class TVContext : IState
31 | {
32 | private IState _state;
33 |
34 | public void SetState(IState state)
35 | {
36 | this._state = state;
37 | DoAction();
38 | }
39 |
40 | public void DoAction()
41 | {
42 | this._state.DoAction();
43 | }
44 | }
45 | }
46 | /*
47 | var context = new TVContext();
48 | var tvOn = new TVOn();
49 | var tvOff = new TVOff();
50 |
51 | context.SetState(tvOn);
52 | context.SetState(tvOff);
53 |
54 | Console.ReadLine();
55 | */
56 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Strategy/Strategy.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Strategy
8 | {
9 | public interface ICompressionStrategy
10 | {
11 | public void CompressFile();
12 | }
13 |
14 | public class ZipCompression : ICompressionStrategy
15 | {
16 | public void CompressFile()
17 | {
18 | Console.WriteLine("Compression using zip");
19 | }
20 | }
21 |
22 | public class RarCompression : ICompressionStrategy
23 | {
24 | public void CompressFile()
25 | {
26 | Console.WriteLine("Compression using rar");
27 | }
28 | }
29 |
30 | public class CompressionContext
31 | {
32 | private ICompressionStrategy _compressionStrategy;
33 |
34 | public void SetCompressionStrategy(ICompressionStrategy strategy)
35 | {
36 | this._compressionStrategy = strategy;
37 | }
38 |
39 | public void Archive()
40 | {
41 | this._compressionStrategy.CompressFile();
42 | }
43 | }
44 | }
45 |
46 | /*
47 | var context = new CompressionContext();
48 |
49 | context.SetCompressionStrategy(new ZipCompression());
50 | context.Archive();
51 |
52 | context.SetCompressionStrategy(new RarCompression());
53 | context.Archive();
54 |
55 | Console.ReadLine();
56 | */
57 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/TemplateMethod/TemplateMethod.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.TemplateMethod
8 | {
9 | public abstract class OrderTemplate
10 | {
11 | public abstract void Choose();
12 | public abstract void Pay();
13 | public abstract void Deliver();
14 |
15 | public bool isMember;
16 |
17 | public void Discount()
18 | {
19 | Console.WriteLine("Additional 10% discount processed for member");
20 | }
21 |
22 | public void Process(bool isMember)
23 | {
24 | Choose();
25 | if (isMember)
26 | {
27 | Discount();
28 | }
29 | Pay();
30 | Deliver();
31 | }
32 | }
33 |
34 | public class Online : OrderTemplate
35 | {
36 | public override void Choose()
37 | {
38 | Console.WriteLine("Product selected online.");
39 | }
40 |
41 | public override void Deliver()
42 | {
43 | Console.WriteLine("Product delivered(online).");
44 | }
45 |
46 | public override void Pay()
47 | {
48 | Console.WriteLine("Paid online.");
49 | }
50 | }
51 |
52 | public class Offline : OrderTemplate
53 | {
54 | public override void Choose()
55 | {
56 | Console.WriteLine("Product selected offine.");
57 | }
58 |
59 | public override void Deliver()
60 | {
61 | Console.WriteLine("Product delivered(offline).");
62 | }
63 |
64 | public override void Pay()
65 | {
66 | Console.WriteLine("Paid offline.");
67 | }
68 | }
69 | }
70 |
71 | /*
72 | var onlineOrder = new Online();
73 | onlineOrder.Process(true);
74 |
75 | Console.WriteLine();
76 |
77 | var offlineOrder = new Offline();
78 | offlineOrder.Process(false);
79 | */
80 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/Visitor/Visitor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace DesignPatternImplementation.Visitor
8 | {
9 | public interface Router
10 | {
11 | public void SendData(char[] data);
12 | public void ReceiveData(char[] data);
13 |
14 | public void Accept(Visitable v);
15 | }
16 |
17 | public interface Visitable
18 | {
19 | public void Visit(DLinkRouter router);
20 | public void Visit(TPLinkRouter router);
21 | }
22 |
23 | public class DLinkRouter : Router
24 | {
25 | public void ReceiveData(char[] data)
26 | { }
27 |
28 | public void SendData(char[] data)
29 | { }
30 |
31 | public void Accept(Visitable v)
32 | {
33 | v.Visit(this);
34 | }
35 | }
36 |
37 | public class TPLinkRouter : Router
38 | {
39 | public void ReceiveData(char[] data)
40 | { }
41 |
42 | public void SendData(char[] data)
43 | { }
44 |
45 | public void Accept(Visitable v)
46 | {
47 | v.Visit(this);
48 | }
49 | }
50 |
51 | public class LinuxConfigurator : Visitable
52 | {
53 | public void Visit(DLinkRouter router)
54 | {
55 | Console.WriteLine("DLinkRouter Linux configuration done.");
56 | }
57 |
58 | public void Visit(TPLinkRouter router)
59 | {
60 | Console.WriteLine("TPLinkRouter Linux configuration done.");
61 | }
62 | }
63 |
64 | public class WindowsConfigurator : Visitable
65 | {
66 | public void Visit(DLinkRouter router)
67 | {
68 | Console.WriteLine("DLinkRouter Windows configuration done.");
69 | }
70 |
71 | public void Visit(TPLinkRouter router)
72 | {
73 | Console.WriteLine("TPLinkRouter Windows configuration done.");
74 | }
75 | }
76 | }
77 |
78 | /*
79 | var linuxConfigurator = new LinuxConfigurator();
80 | var dLinkRouter = new DLinkRouter();
81 | var tpLinkRouter = new TPLinkRouter();
82 | linuxConfigurator.Visit(dLinkRouter);
83 | linuxConfigurator.Visit(tpLinkRouter);
84 |
85 | Console.WriteLine();
86 |
87 | var windowsConfigurator = new WindowsConfigurator();
88 | windowsConfigurator.Visit(dLinkRouter);
89 | windowsConfigurator.Visit(tpLinkRouter);
90 |
91 | Console.ReadLine();
92 | */
93 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/bin/Debug/DesignPatternImplementation.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/obj/Debug/.NETFramework,Version=v4.5.2.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.5.2", FrameworkDisplayName = ".NET Framework 4.5.2")]
5 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/obj/Debug/DesignPatternImplementation.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.exe.config
2 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.exe
3 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.pdb
4 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.csprojResolveAssemblyReference.cache
5 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.exe
6 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.pdb
7 | C:\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.exe.config
8 | C:\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.exe
9 | C:\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.pdb
10 | C:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.csprojAssemblyReference.cache
11 | C:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.exe
12 | C:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.pdb
13 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.exe.config
14 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.exe
15 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\bin\Debug\DesignPatternImplementation.pdb
16 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.csprojAssemblyReference.cache
17 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.exe
18 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.pdb
19 | D:\AlgorithmsMadeEasy\DesignPatternImplementation\obj\Debug\DesignPatternImplementation.csproj.CoreCompileInputs.cache
20 |
--------------------------------------------------------------------------------
/DesignPatternImplementation/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/DesignPatternImplementation/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/DesignPatternImplementation/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/DesignPatternImplementation/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/DesignPatternImplementation/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/DesignPatternImplementation/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/DesignPatternsTests/Command/CommandTests.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Microsoft.VisualStudio.TestTools.UnitTesting;
3 | using DesignPatternImplementation.Command;
4 |
5 | namespace DesignPatternsTests.Command
6 | {
7 | [TestClass]
8 | public class CommandTests
9 | {
10 | [TestMethod]
11 | public void ShouldAddTextCommand()
12 | {
13 | var controller = new Controller();
14 | IAppCommand addTextCommand = new AddTextCommand();
15 | var addTextReference = controller.AddCommand(addTextCommand);
16 | var expected = "1234";
17 | controller.GetCommandAt(addTextReference).Execute(expected);
18 | Assert.AreEqual(expected, controller.GetBuiltString());
19 | Assert.AreEqual(expected, controller.GetCommandAt(addTextReference).sb.ToString());
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/DesignPatternsTests/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("DesignPatternsTests")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("DesignPatternsTests")]
10 | [assembly: AssemblyCopyright("Copyright © 2017")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 |
14 | [assembly: ComVisible(false)]
15 |
16 | [assembly: Guid("cb61b723-06f7-4cf4-9a58-cba4d19eb2af")]
17 |
18 | // [assembly: AssemblyVersion("1.0.*")]
19 | [assembly: AssemblyVersion("1.0.0.0")]
20 | [assembly: AssemblyFileVersion("1.0.0.0")]
21 |
--------------------------------------------------------------------------------
/DesignPatternsTests/bin/Debug/DesignPatternImplementation.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/DesignPatternsTests/obj/Debug/DesignPatternsTests.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll
2 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll
3 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll
4 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\DesignPatternsTests.dll
5 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\DesignPatternsTests.pdb
6 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\DesignPatternImplementation.exe
7 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.dll
8 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll
9 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\DesignPatternImplementation.pdb
10 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\DesignPatternImplementation.exe.config
11 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.xml
12 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml
13 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\obj\Debug\DesignPatternsTests.csprojResolveAssemblyReference.cache
14 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\obj\Debug\DesignPatternsTests.dll
15 | D:\AlgorithmsMadeEasyRepo\AlgorithmsMadeEasy\DesignPatternsTests\obj\Debug\DesignPatternsTests.pdb
16 |
--------------------------------------------------------------------------------
/DesignPatternsTests/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/DesignPatternsTests/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/DesignPatternsTests/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/DesignPatternsTests/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/DesignPatternsTests/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/DesignPatternsTests/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/DesignPatternsTests/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # AlgorithmsMadeEasy
2 | Solved following algorithms and explained design patterns along with sample inputs,
3 | BinarySearchTree,
4 | BubbleSort,
5 | CuttingRod,
6 | InsertionSort,
7 | KMPSubstringSearch,
8 | LongestPalindromicSubsequence,
9 | MaximumRectangularArea,
10 | MaximumSizeRectangle,
11 | MergeSort,
12 | MinimumCoinChange,
13 | MinimumCostPathInMatrix,
14 | MinimumJumpToReachEnd,
15 | QuickSort,
16 | SelectionSort,
17 | StaircaseProblemFibonacciSeries,
18 | StringInterleaving,
19 | TopologicalSortGraphAlgorithm,
20 | WeightedJobScheduling.
21 |
22 | Please checkout my YouTube Channel for detailed explanation,
23 |
24 | https://www.youtube.com/channel/UCLfy0xojGef-4cnFhp_xTng?view_as=subscriber
25 |
--------------------------------------------------------------------------------
/packages/MSTest.TestAdapter.1.1.11/MSTest.TestAdapter.1.1.11.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/MSTest.TestAdapter.1.1.11/MSTest.TestAdapter.1.1.11.nupkg
--------------------------------------------------------------------------------
/packages/MSTest.TestAdapter.1.1.11/build/net45/MSTest.TestAdapter.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll
6 | PreserveNewest
7 | False
8 |
9 |
10 | Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll
11 | PreserveNewest
12 | False
13 |
14 |
15 | Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll
16 | PreserveNewest
17 | False
18 |
19 |
20 |
--------------------------------------------------------------------------------
/packages/MSTest.TestAdapter.1.1.11/build/netstandard1.0/MSTest.TestAdapter.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll
6 | PreserveNewest
7 | False
8 |
9 |
10 | Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll
11 | PreserveNewest
12 | False
13 |
14 |
15 | Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll
16 | PreserveNewest
17 | False
18 |
19 |
20 |
--------------------------------------------------------------------------------
/packages/MSTest.TestAdapter.1.1.11/build/uap10.0/MSTest.TestAdapter.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll
6 | PreserveNewest
7 | False
8 |
9 |
10 | Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll
11 | PreserveNewest
12 | False
13 |
14 |
15 | Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll
16 | PreserveNewest
17 | False
18 |
19 |
20 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/MSTest.TestFramework.1.1.11.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/MSTest.TestFramework.1.1.11/MSTest.TestFramework.1.1.11.nupkg
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/dotnet/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/netcoreapp1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | TestContext class. This class should be fully abstract and not contain any
10 | members. The adapter will implement the members. Users in the framework should
11 | only access this via a well-defined interface.
12 |
13 |
14 |
15 |
16 | Gets test properties for a test.
17 |
18 |
19 |
20 |
21 |
22 | Gets Fully-qualified name of the class containing the test method currently being executed
23 |
24 |
25 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
26 | Those attributes have access to the test context, and provide messages that are included
27 | in the test results. Users can benefit from messages that include the fully-qualified
28 | class name in addition to the name of the test method currently being executed.
29 |
30 |
31 |
32 |
33 | Gets the Name of the test method currently being executed
34 |
35 |
36 |
37 |
38 | Gets the current test outcome.
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/MSTest.TestFramework.1.1.11/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions
5 |
6 |
7 |
8 |
9 | Execute test code in UI thread for Windows store apps.
10 |
11 |
12 |
13 |
14 | Executes the test method on the UI Thread.
15 |
16 |
17 | The test method.
18 |
19 |
20 | The .
21 |
22 | Throws when run on an async test method.
23 |
24 |
25 |
26 |
27 | TestContext class. This class should be fully abstract and not contain any
28 | members. The adapter will implement the members. Users in the framework should
29 | only access this via a well-defined interface.
30 |
31 |
32 |
33 |
34 | Gets test properties for a test.
35 |
36 |
37 |
38 |
39 |
40 | Gets Fully-qualified name of the class containing the test method currently being executed
41 |
42 |
43 | This property can be useful in attributes derived from ExpectedExceptionBaseAttribute.
44 | Those attributes have access to the test context, and provide messages that are included
45 | in the test results. Users can benefit from messages that include the fully-qualified
46 | class name in addition to the name of the test method currently being executed.
47 |
48 |
49 |
50 |
51 | Gets the Name of the test method currently being executed
52 |
53 |
54 |
55 |
56 | Gets the current test outcome.
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/QuickGraph.3.6.61119.7.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/QuickGraph.3.6.61119.7.nupkg
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Contracts.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Contracts.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Data.Contracts.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Data.Contracts.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Graphviz.Contracts.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Graphviz.Contracts.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Serialization.Contracts.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/CodeContracts/QuickGraph.Serialization.Contracts.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Data.XML:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | QuickGraph.Data
5 |
6 |
7 |
8 |
9 | An algorithm that renders a DataSet graph to the Graphviz DOT format.
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Data.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Data.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Graphviz.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Graphviz.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Serialization.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.Serialization.dll
--------------------------------------------------------------------------------
/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bharathkumarms/AlgorithmsMadeEasy/0ca64996c9b057b43d3e0b3c0536b32b3fc72fa6/packages/QuickGraph.3.6.61119.7/lib/net4/QuickGraph.dll
--------------------------------------------------------------------------------
/packages/repositories.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------