generated from chrdek/linqpath_prerel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.json
22 lines (22 loc) · 36.3 KB
/
index.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"docs/LinqDataCalc.LinqDataCalcExtensions.AlgoType.html": {
"href": "docs/LinqDataCalc.LinqDataCalcExtensions.AlgoType.html",
"title": "Enum LinqDataCalcExtensions.AlgoType | Package Documentation",
"keywords": "Enum LinqDataCalcExtensions.AlgoType Namespace LinqDataCalc Assembly LinqDataCalc.dll Enum implementation for selecting multiple algorithms for hamming distance used for integer comparison. public enum LinqDataCalcExtensions.AlgoType Fields DistLoop = 0 DistXOR1 = 1 DistXOR2 = 2 Examples Usage as below: AlgoType.DistLoop // selects method 1 AlgoType.DistXOR1 // selects method 2 AlgoType.DistXOR2 // selects method 3"
},
"docs/LinqDataCalc.LinqDataCalcExtensions.Node.html": {
"href": "docs/LinqDataCalc.LinqDataCalcExtensions.Node.html",
"title": "Class LinqDataCalcExtensions.Node | Package Documentation",
"keywords": "Class LinqDataCalcExtensions.Node Namespace LinqDataCalc Assembly LinqDataCalc.dll Class implementation for BTree Nodes, BTree operations. public class LinqDataCalcExtensions.Node Inheritance object LinqDataCalcExtensions.Node Inherited Members object.ToString() object.Equals(object) object.Equals(object, object) object.ReferenceEquals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() Extension Methods LinqDataCalcExtensions.BTreeHeight(LinqDataCalcExtensions.Node) Examples Usage as below: (This represents a set of nodes for a BTree of height = 3-including root Node-) Node leaf1 = new Node(null, null); Node leaf2 = new Node(null, null); Node node = new Node(leaf1, null); Node root = new Node(node, leaf2); Constructors Node(Node, Node) public Node(LinqDataCalcExtensions.Node leftChild, LinqDataCalcExtensions.Node rightChild) Parameters leftChild LinqDataCalcExtensions.Node rightChild LinqDataCalcExtensions.Node Properties LeftChild public LinqDataCalcExtensions.Node LeftChild { get; set; } Property Value LinqDataCalcExtensions.Node RightChild public LinqDataCalcExtensions.Node RightChild { get; set; } Property Value LinqDataCalcExtensions.Node"
},
"docs/LinqDataCalc.LinqDataCalcExtensions.html": {
"href": "docs/LinqDataCalc.LinqDataCalcExtensions.html",
"title": "Class LinqDataCalcExtensions | Package Documentation",
"keywords": "Class LinqDataCalcExtensions Namespace LinqDataCalc Assembly LinqDataCalc.dll Main LinqDataCalcExtensions Class implementation. public static class LinqDataCalcExtensions Inheritance object LinqDataCalcExtensions Inherited Members object.ToString() object.Equals(object) object.Equals(object, object) object.ReferenceEquals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() Methods AsNumberTuples(IEnumerable<object>) Retrieve a list of numeric tuples from an input list of objects. public static IList<Tuple<int, ulong, long, double, decimal>> AsNumberTuples(this IEnumerable<object> elements) Parameters elements IEnumerable<object> The list of objects to be used as input Returns IList<Tuple<int, ulong, long, double, decimal>> A list of tuples with the relevant data types retrieved from the objects list Examples Get a List of zero-filled Tuples with numeric values (int/ulong/long/double/decimal). object[] types = { \"###\",\"hello1\",\"!*\",439,30,12,1.3,3.2m,new List{1,3,5,78,14,24,40,9},'d',3283782378289,\"2902\",92.4m,\"345,2\",881.74m,30333.1434,-43902,(new int[]{10,490,20,103,40,30}),930 }; var resTuple = types.AsNumberTuples(); BTreeGen(double, int) Generate a binary tree of random height, based on a prespecified complexity factor value (needs to be of double data type). public static LinqDataCalcExtensions.Node BTreeGen(this double nodeDensity, int depth) Parameters nodeDensity double The density factor of which to generate the random tree nodes with depth int The b-tree depth for which to determine the height with Returns LinqDataCalcExtensions.Node A randomly generated b-tree root with leaf nodes that consist of Node data type Examples Generate a binary tree of specified depth N with random nodes density. var tree_root = 0.543.BTreeGen(6); BTreeGen2(int, double) Generate a range of binary trees of random height, based on a prespecified complexity factor value (needs to be of double data type) and yields an enumerable based on those b-trees. public static IEnumerable<LinqDataCalcExtensions.Node> BTreeGen2(int depth, double nodeDensity) Parameters depth int The b-tree depth for which to determine the height with nodeDensity double The density factor of which to generate the random tree nodes with Returns IEnumerable<LinqDataCalcExtensions.Node> An IEnumerable of multiple b-tree roots with random leaf nodes that consist of Node data type Examples Generate a binary tree range of specified depth N with random nodes density. var ienum_tree_roots = LinqDataCalcExtensions.BTreeGen2(3,0.75); BTreeHeight(Node) Calculation of a b-tree total height counting edges from the root node, to the end of the leafs of the data structure. (Utilizes queuing on adding/removing nodes for height calculation) public static int BTreeHeight(this LinqDataCalcExtensions.Node input) Parameters input LinqDataCalcExtensions.Node The root node of the b-tree of which to calculate the height from. Returns int Calculated b-tree data structure height (root node = start). Examples Calculate the b-tree height from the root node to outer leafs. var tree_root = 0.543.BTreeGen(6); //creates a root b-tree of size 6 LinqDataCalcExtensions.BTreeHeight(tree_root); // result of total height 5 ChunkOf<T>(IEnumerable<T>, int) Retrieves chunks of size N from a list as a nested list. public static IEnumerable<IEnumerable<T>> ChunkOf<T>(this IEnumerable<T> elements, int len) Parameters elements IEnumerable<T> List of elements used as input len int Length of N - chunks that the elements list is to be splitted into Returns IEnumerable<IEnumerable<T>> A nested enumerable list of which sub lists are chunks of equal length Type Parameters T Any type of elements in the list Examples Split an IEnumerable into chunks of Length N. int[] num_seq = { -990,-940,-770,-599,-543,-513,-482,-451,-445,-371,-240,-371,-940 }; var num = num_seq.AsEnumerable(); var result = num.ChunkOf(3); CompareBytes(byte[], byte[]) Compare the bytes in two 1-dimensional byte arrays. public static bool CompareBytes(this byte[] larray, byte[] rarray) Parameters larray byte[] rarray byte[] Returns bool True or False depending on the result Examples Check whether two 1-dimensional byte arrays are equal. byte[] b1 = new byte[]{77,90,144,0,3,0,0,0,4,0,0,0,255,255,0,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,14,31,32,100}; byte[] b2 = new byte[]{77,90,144,0,3,0,0,0,4,0,0,0,255,20,0,0,0,0,0,0,128,0,0,0,14,31,186,14,0,180,9,205,33,184,1,76,103,114}; bool result = b1.CompareBytes(b2); DictionaryRndFill(Dictionary<string, Tuple<int, int>>, int) Retrieve a dictionary with random integer numbers and a randomly produced string. public static IDictionary<string, Tuple<int, int>> DictionaryRndFill(this Dictionary<string, Tuple<int, int>> dictionary, int length) Parameters dictionary Dictionary<string, Tuple<int, int>> length int The maximum amount of info produced Returns IDictionary<string, Tuple<int, int>> A dictionary of key=string/value=Tuple(int,int) type layout filled with random values Examples Get an IDictionary filled with string keys and corresponding integer random values. // 1 - full code not shown.. Initialize a dictionary of key-value type key=string/value=Tuple(int,int) //2 - call following method of the dictionary -> dict_var.DictionaryRndFill(10); DiffBytes(byte[], byte[]) Checks two 1-dimensional byte arrays and returns a list of the positions where the bytes are different with the byte values. public static IDictionary<int, int> DiffBytes(this byte[] mainarr, byte[] diffarr) Parameters mainarr byte[] The main byte array to be compared diffarr byte[] The secondary byte array to be compared against Returns IDictionary<int, int> An Dictionary with the different bytes and the array positions that contains the difference against. Examples Check two 1-dimensional byte arrays, and return a list of different bytes and the point of difference. byte[] b1 = new byte[]{77,90,144,0,3,0,0,0,4,0,0,0,255,255,0,0,184,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,14,31,32,100}; byte[] b2 = new byte[]{77,90,144,0,3,0,0,0,4,0,0,0,255,20,0,0,0,0,0,0,128,0,0,0,14,31,186,14,0,180,9,205,33,184,1,76,103,114}; var result = b1.DiffBytes(b2); ExpectedValue(IEnumerable<double>, IEnumerable<double>) Based on a number list of probability values and a secondary list of possible expected outcomes of that probability, retrieve the overall expected value of the frequency of occurence on the inital observation/event. public static double ExpectedValue(this IEnumerable<double> probabilities, IEnumerable<double> outcomes) Parameters probabilities IEnumerable<double> List of probability values outcomes IEnumerable<double> List of expected outcome values Returns double The expected outcome/frequency of occurence value Examples Calculates Expected value of two probability sequences. double expected = new double[]{1,2,3,4,5,6,7,8}.ExpectedValue(Enumerable.Repeat(0.125,8)); Factorial(IEnumerable<int>) Calculates the factorial of any given value, from a provided range of values. public static IEnumerable<int> Factorial(this IEnumerable<int> values) Parameters values IEnumerable<int> List of input values Returns IEnumerable<int> The list of factorials based on their original values Examples Calculates Factorial values for an IEnumerable. var result = Enumerable.Range(1,10).Factorial(); FiboSeq(int) Fibonacci sequence for a given number as input. public static IEnumerable<ulong> FiboSeq(this int numLimit) Parameters numLimit int The max number that fibonacci seq. gets generated for Returns IEnumerable<ulong> An IEnumerable with fibonacci numbers. Examples Get the resulting numeric fibonacci sequence. var seq_out = 10.FiboSeq(); var seq_out = 100.FiboSeq(); FiboSeqGenerator(int) Fibonacci sequence yield utilizing generator functions. public static IEnumerable<ulong> FiboSeqGenerator(this int num) Parameters num int The max number that fibonacci seq. gets generated for Returns IEnumerable<ulong> An IEnumerable with large fibonacci numbers. Examples Get the resulting numeric fibonacci sequence. var seq_out = 10.FiboSeqGenerator(); var seq_out = 100.FiboSeqGenerator(); GetRandomElements<T>(IEnumerable<T>, int) Retrieve a list of random elements from an input list. public static IEnumerable<T> GetRandomElements<T>(this IEnumerable<T> elements, int totElements) Parameters elements IEnumerable<T> The list of elements to be used as input totElements int The maximum number of random elements to be retrieved Returns IEnumerable<T> A list of random elements with specified total length Type Parameters T Any type of elements in the list Examples Get an IEnumerable of 10 randomly selected elements. var tenElements = Enumerable.Range(1,100).GetRandomElements(10); HammingDist(string, string) Hamming distance calculation for comparing two strings of equal length Retrieves the different characters count in both strings public static int HammingDist(this string leftStr, string rightStr) Parameters leftStr string The left string part rightStr string The right string part Returns int Maximum integer value in case both strings are not equal in legth, Number of differences in both strings otherwise. Examples Retrieve a default value as result if strings are not equal or hamming comparison value. int res = \"ABCDHFGF\".HammingDist(\"ABCDEFO9\"); //res equals to 3 int res = \"ABC\".HammingDist(\"AAABBBCCCDD77\"); //res equals to MaxInt int res = \"A8udhhG\".HammingDist(\"A8udhhG\"); //res equals to 0 int res = \"A8udhhG\".HammingDist(\"A8UDHHG\"); //res equals to 4 HammingDistAlgo(int, int, AlgoType) Hamming Distance calculation between two integer numbers using different algorithm variants, multiple algo. selections. (Calculated bit-level differences between numerical values) public static int HammingDistAlgo(this int leftNum, int rightNum, LinqDataCalcExtensions.AlgoType hamming_alg) Parameters leftNum int The leftmost number to compare with rightNum int The rightmost number to be compared with hamming_alg LinqDataCalcExtensions.AlgoType The hamming distance algorithm selection Can only use: AlgoType.DistLoop, AlgoType.DistXOR1, AlgoType.DistXOR2 for setting appropriate variant to use. Returns int Examples Calculating the hamming distance between two integers by using different methods. int res = (-995).HammingDistAlgo((-48),LinqDataCalcExtensions.AlgoType.DistXOR1); int res = (-995).HammingDistAlgo((-48),LinqDataCalcExtensions.AlgoType.DistXOR2); int res = (-995).HammingDistAlgo((-48),LinqDataCalcExtensions.AlgoType.DistLoop); //Result in all cases above = 7 HammingWeight(uint) Hamming Weight Calculation for bit-depth of integers (UInt support of 32-bit integer values) Utilizes direct \"bit manipulation, bit swapping\" algorithm for hamming weight calculation. public static int HammingWeight(this uint in_x) Parameters in_x uint The integer value to return the numerical weight for Returns int The calculated integer value of hamming weight Examples Calculate the resulting hamming weight of an integer value. uint testVal = 0x10043091; //int values int result = testVal.HammingWeight(); HammingWeight(ulong) Hamming Weight Calculation for bit-depth of long integers (ULong support of 64-bit integer values) Utilizes direct \"bit manipulation, bit swapping\" algorithm for hamming weight calculation. public static int HammingWeight(this ulong in_x) Parameters in_x ulong The long integer value to return the numerical weight for Returns int The calculated integer value of hamming weight Examples Calculate the resulting hamming weight of a long integer value. ulong testVal = 0x8891930311; //large int values int result = testVal.HammingWeight(); HappySeq(int) For a provided maximum value, generate happy numbers sequence up to that value. public static IEnumerable<int> HappySeq(this int endLimit) Parameters endLimit int The numeric sequence upper limit to generate the happy numbers for Returns IEnumerable<int> A list of integer numbers. Examples Get the integers in a sequence that produce a happy sum. var list_out = 150.HappySeq(); var list_out = 10.HappySeq(); var list_out = 0.HappySeq(); //list_out Length = 0 var list_out = 1.HappySeq(); //list_out Length = 1 (value = 1) IEnumRndFill(IEnumerable<int>, object) Retrieve a list with random integer or decimal numbers depending on input provided. public static IEnumerable<object> IEnumRndFill(this IEnumerable<int> retIntSeq, object number) Parameters retIntSeq IEnumerable<int> The list used as input number object A numeric value, decimal or integer Returns IEnumerable<object> A list of random values Examples Get an IEnumerable filled with random integer/double values. var resultInt = Enumerable.Repeat(0,10).IEnumRndFill(5); // fills with random integers var resultDouble = Enumerable.Repeat(0,10).IEnumRndFill(1.5); // fills with random doubles IterateAt<T>(IEnumerable<T>, int) Retrieves a range of values from a list iteratively as a nested list. Element list at index 1 at indexes 1,2 at 1,2,3 up to N. public static IEnumerable<IEnumerable<T>> IterateAt<T>(this IEnumerable<T> elements, int size) Parameters elements IEnumerable<T> List of elements used as input size int Number of max iterations that lists are retrieved Returns IEnumerable<IEnumerable<T>> A nested enumerable list that has a maximum length defined by -size- parameter Type Parameters T Any type of elements in the list Examples Get the Nth iteration of an IEnumerable in nested form. int[] num_seq = { -990,-940,-770,-599,-543,-513,-482,-451,-445,-371,-240,-371,-940 }; var num = num_seq.AsEnumerable(); var result = num.IterateAt(4); LetterCombinationsOf(string) Retrieve all letter combinations (power sets) of a provided string. public static List<string> LetterCombinationsOf(this string strElement) Parameters strElement string The string of letters used as input Returns List<string> A list of all combinations for the input string Examples Get a List of strings displaying letter combinations. var combinations = (\"He1l01!\").LetterCombinationsOf(); LevnDist(string, string) Levenshtein distance for two input strings and edit differences for those. (Can be applied between two strings of equal or differing length in size) public static int LevnDist(this string strLeft, string strRight) Parameters strLeft string The leftmost string to find edit diffs from strRight string The rightmost string to compare edit diffs with Returns int Calculated sum or edit distance per input set of strings as integer. Examples Calculate the levenshtein distance between strings left, right. int result = \"Paints\".LevnDist(\"ants\"); //result = 2 int result = \"Compute\".LevnDist(\"Confuse\"); // result = 3 LevnDistEditMatrix(string, string) Levenshtein edit distance matrix retrieval with full set of calculations. (Can be applied between two strings of equal or differing length in size) public static IEnumerable<int[,]> LevnDistEditMatrix(this string str1, string str2) Parameters str1 string The leftmost string to compare edit diffs from str2 string The rightmost string to compare edit diffs with Returns IEnumerable<int[,]> An enumerable of the entire 2-dimensional edit distances matrix with all distance calculations. Examples Calculate the levenshtein distance of two strings, return the entire set of iterations, element at array position [N,M] is the result of the total diff distance. var result_ienum = \"test2\".LevnDistEditMatrix(\"arst22\"); //last matrix element = 3 var result_ienum = \"ant\".LevnDistEditMatrix(\"aunt\"); //last matrix element = 1 LevnDistRecur(string, string, int[,]) A recursive Levenstein implementation utilizing memoized cache for faster execution time. (Can be applied between two strings of equal or differing length in size) public static int LevnDistRecur(this string leftStrIn, string rightStrIn, int[,] memo) Parameters leftStrIn string The leftmost string to find edit diffs from rightStrIn string The rightmost string to compare edit diffs with memo int[,] The matrix to store the intermediary distance cost results in Note: Needs to be the same size as NxM such that N = length of leftStrIn, M = length of rightStrIn Returns int Calculated sum or edit distance per input set of strings as integer. Examples Calculate the levenshtein distance between strings left, right. int result = \"test2\".LevnDistRecur(\"arst22\",new int[(\"test2\".Length)+1,(\"arst22\".Length)+1]); // result = 3 int result = \"Sam\".LevnDistRecur(\"Samantha\",new int[(\"Sam\".Length)+1,(\"Samantha\".Length)+1]); // result = 5 MatrixProduct(int[,], int[,]) Matrix dot product calculation for 2-dimensional integer arrays of shape NxM. (PLINQ utilization for large data sets handling) public static int[,] MatrixProduct(this int[,] matrixA, int[,] matrixB) Parameters matrixA int[,] First integer matrix to be used for multipl. product matrixB int[,] Second integer matrix to be multiplied with for multipl. product Returns int[,] The product matrix in a 2-dimensional matrix format Examples Calculate and retrieve the dot product of multiplying the two input matrices. var result = new int[4,2]{{2,2},{3,7},{8,4},{8,5}}.MatrixProduct(new int[2,3]{{1,2,4},{12,42,9}}); // Result as a 2-dim array MatrixProductv2(int[,], int[,], int) Matrix dot product calculation for 2-dimensional integer arrays of shape NxM. (Outputs the finalized product matrix in either list of lists or standard 2-d array format) public static object MatrixProductv2(this int[,] mtrx1, int[,] mtrx2, int twoDim = 0) Parameters mtrx1 int[,] First integer matrix to be used for multipl. product mtrx2 int[,] Second integer matrix to be multiplied with for multipl. product twoDim int Selection option to retrieve the product result as a list of sublists or as a normal 2-dimensional matrix Returns object An Object of either List of sublists type or int[,] type that defines product matrix result. Examples Calculate and retrieve the dot product of multiplying two matrices in both list-of-lists format or standard 2-dimensional array format. This can be determined by a variable, defaults to 2-dimensional array output. var result_1 = new int[4,2]{{2,2},{3,7},{8,4},{8,5}}.MatrixProductv2(new int[2,3]{{1,2,4},{12,42,9}},0); // Results to 2-dim array output var result_2 = new int[4,2]{{2,2},{3,7},{8,4},{8,5}}.MatrixProductv2(new int[2,3]{{1,2,4},{12,42,9}},1); // Results to list of lists output MatrixTranspose<T>(T[,]) Transposes a 2-dimensional array of different data type such that rows N become columns M and vice-versa. public static T[,] MatrixTranspose<T>(this T[,] matrixIn) Parameters matrixIn T[,] The 2-dimensional input matrix to invert rows with columns from Returns T[,] Transposed 2-dimensional matrix of the original input array for any kind of array elements. Type Parameters T Any kind of elements in a sequence Examples Transpose 2-dimensional matrix of dimensions [N,M]. int[,] matrixT1 = new int[6,2] { {3,4},{5,9},{10,44},{3,77},{88,0},{0,90} }; //test with integers matrix double[,] matrixT2 = new double[5,9]{ {9.0,34.0,0.99,3.1,9.4,4.51,9.87,1.43,9.88}, {2.4,22.01,55.10,9.09,1.30,9.99,10.45,9.0,8.01}, {4.6,4.3,3.4,68.009,45.92,3.54,9.89,5.69,0.849},{1.2,4.5,33.5,54.4,45.9,5.89,9.09,1.223,4.54}, {4.5,1.0,4,42.9,9.9,9.9,9,9,9} }; //test with doubles matrix var resultT1 = matrixT1.MatrixTranspose(); // results in a 2x6 matrix var resultT2 = matrixT2.MatrixTranspose(); // results in a 9x5 matrix MatrixTranspose<T>(T[][]) Transposes a 2-dimensional jagged -or uneven- array of different data type such that rows N become columns M and vice-versa. public static T[][] MatrixTranspose<T>(this T[][] matrixIn) Parameters matrixIn T[][] The 2-dimensional jagged array to invert rows with columns from Returns T[][] Transposed 2-dimensional jagged array of the original input array for any kind of array elements. Type Parameters T Any kind of elements in a sequence Examples Transposed 2-dimensional jagged array of dimensions [N][M]. string[][] matrixT3 = new string[][]{ //test with strings array new string[12]{\"This\", \"is a\", \"test\",\"this\",\"side\",\"should\",\"appear\",\"on the left\",\"of \",\"your\",\"screen\",\"if the\"}, new string[12]{\" script\",\" has \",\"been run \",\"as\", \" expected.\",\"Test \",\"run\",\" already \",\"for a \",\"matrix of \",\"nxm size \",\" where n is\" }, new string[12]{\"equal to 3\",\" and \",\"m equal\",\" to \",\" twelve\",\" If n\",\" and m\",\"increase\",\" or decrease then\",\"output should\",\"vary \",\"accordingly\"} }; var resultT3 = matrixT3.MatrixTranspose(); //results in a 12x3 jagged array [12][3] MaxCollVals(List<List<int>>, bool) Retrieve either the maximum or minimum set of value from every nested integer list-of-lists data structure. public static List<int> MaxCollVals(this List<List<int>> inputColl, bool isMax = true) Parameters inputColl List<List<int>> Input nested list to retrieve max-min set of values from isMax bool Option to retrieve either the maximum or minimum values per subset in every list-of-lists dataset Returns List<int> An integer list containing the maximum value of each column-compared subset in list-of lists Examples Retrieve all the maximum, or minimum integer values for each column-based subset in the input nested list. // 1 - Provided that you initialize a list of lists (code not shown..) // . . . allValues.Add(valuesSet1); // 2 - populate the lists of lists allValues.Add(valuesSet2); allValues.Add(valuesSet3); allValues.Add(valuesSet4); var result = allValues.MaxCollVals(); //defaults to maximum subset of values for every column-compared subset of lists var result = allValues.MaxCollVals(false); //results to minimum subset of values for every column-compared subset of lists MaxMatrixVal(int[,], bool) Retrieve either the maximum or minimum value in a 2-dimensional integer matrix. public static int MaxMatrixVal(this int[,] mtrx, bool isMax = true) Parameters mtrx int[,] Input matrix to retrieve max-min values from isMax bool Option to retrieve either the maximum or minimum value from 2-dimensional dataset from Returns int The maximum or minimum integer value of the input matrix Examples Retrieve the maximum, or minimum integer value from the input matrix. int[,] arr2d = new int[,]{{10,40,13,40},{9,10,40,99},{9,10,40,99},{9,10,49,19},{9,10,40,990},{9,10,422,99}}; var result = arr2d.MaxMatrixVal() // defaults to maximum value = 990 var result = arr2d.MaxMatrixVal(false) // retrieve minimum value = 9 MaxMultiDimVal(int[][], bool) Retrieve either the maximum or minimum value in a jagged array data structure. public static int MaxMultiDimVal(this int[][] mtrx, bool isMax = true) Parameters mtrx int[][] Input matrix to retrieve max-min values from isMax bool Option to retrieve either the maximum or minimum value from the jagged array dataset Returns int The maximum or minimum integer value of the input array of arrays Examples Retrieve the maximum, or minimum integer value from the input array of arrays. int[] arr1 = new int[] {1,2,3,5,4}; int[] arr2 = new int[] {3,2,1,0,10,39,10,43,11}; int[] arr3 = new int[]{24,1,90}; int[][] main_arr = new int[][]{arr1,arr2,arr3}; var result = main_arr.MaxMultiDimVal() // defaults to maximum value = 90 var result = main_arr.MaxMultiDimVal(false) // retrieve minimum value = 0 MedianValue(IEnumerable<int>) Return the median value in an -ordered- numeric sequence. public static double MedianValue(this IEnumerable<int> elements) Parameters elements IEnumerable<int> The numeric sequence used as input Returns double Double median value for the selected sequence Examples Get the median value in an IEnumerable. int[] num_seq = { -990,-940,-770,-599,-543,-513,-482,-451,-445,-371,-240 }; var num = num_seq.AsEnumerable(); double result = num.MedianValue(); ModeValues(IEnumerable<int>) Retrieve the mode values in a sequence of numbers. (The most frequently occuring number - ordered) public static IEnumerable<KeyValuePair<int, int>> ModeValues(this IEnumerable<int> elements) Parameters elements IEnumerable<int> The numeric sequence used as input Returns IEnumerable<KeyValuePair<int, int>> An IEnumerable KeyValuePair with Key=total per the mode value and Value=occuring value in the sequence. Examples Get the top used values in an IEnumerable. int[] num_seq = { -990,-940,-770,-599,-543,-513,-482,-451,-445,-371,-240,-371,-940 }; var num = num_seq.AsEnumerable(); var result = num.ModeValues(); OddOrEven<T>(IEnumerable<T>) Checks whether the total length of a sequence is odd or even. public static bool OddOrEven<T>(this IEnumerable<T> elements) Parameters elements IEnumerable<T> The data sequence to be checked Returns bool True or False depending on the result Type Parameters T Any kind of elements in a sequence Examples Check whether length of IEnumerable is odd or even. bool oddlen = new int[]{4,43,13,50,40}.OddOrEven(); PowerOf(int, int) Raises a number to the Nth power recursively. public static int PowerOf(this int value, int powBy) Parameters value int The integer to raise to the Nth power powBy int The Nth power value Returns int Result of the power of a number Examples Calculates Nth power of an integer. int result = new int[]{4,43,13,50,40}.Select(n=>n.PowerOf(3)); ReorderElementsIterator<T>(IEnumerable<T>, Random) Implementation of the iterative functionality for the list reording. public static IEnumerable<T> ReorderElementsIterator<T>(this IEnumerable<T> elements, Random prng) Parameters elements IEnumerable<T> The list of elements to be used as input prng Random The Random object to be used as seed for shuffling indexes Returns IEnumerable<T> A list of reordered elements using random index shuffling in the initial list Type Parameters T Any type of elements in the list ReorderElements<T>(IEnumerable<T>) Retrieve a list of random elements from an input list -using natural reordering-. public static IEnumerable<T> ReorderElements<T>(this IEnumerable<T> elements) Parameters elements IEnumerable<T> Returns IEnumerable<T> A reording elements iterator result with the Random object seed Type Parameters T Any type of elements in the list Examples Get an IEnumerable of 10 reordered elements. var tenElements = Enumerable.Range(1,10).ReorderElements().Take(10); RndDoubleTuple(IEnumerable<int>, double) Provided a list of integer values you, retrieve a list of tuples and random doubles with random string values. public static IList<(double sample, string name)> RndDoubleTuple(this IEnumerable<int> elements, double scaleFact) Parameters elements IEnumerable<int> A list of default integers to be modified scaleFact double The scaling factor by which double values are created Returns IList<(double sample, string name)> A list of tuples with random doubles and string values Examples Get a List Tuple filled with random doubles and random strings. var resRndDouble = Enumerable.Range(1,10).RndDoubleTuple(.001); Remarks This works using argument deconstruction by ValueTuple type (available with C# >= 7, .NET >= 4.7, VS 2019) Already included .dll reference for ValueTuples (currently .NET = 4.6.) RndIntTuple(IEnumerable<int>) Provided a list of integer values you, retrieve a list of tuples and random integer with random string values. public static IList<(int sample, string name)> RndIntTuple(this IEnumerable<int> elements) Parameters elements IEnumerable<int> A list of default integers to be modified Returns IList<(int sample, string name)> A list of tuples with random integers and string values Examples Get an List Tuple filled with random integers and random strings. var resRndInt = Enumerable.Range(1,10).RndIntTuple(); Remarks This works using argument deconstruction by ValueTuple type (available with C# >= 7, .NET >= 4.7, VS 2019) Already included .dll reference for ValueTuples (currently .NET = 4.6.) SequenceEquals<T>(T[,], T[,]) Checks whether two 2-dimensional arrays of any element type are equal. public static bool SequenceEquals<T>(this T[,] a, T[,] b) Parameters a T[,] The first sequence to be compared b T[,] The second sequence to be compared against the first Returns bool True or False depending on the result Type Parameters T Any kind of elements in a sequence Examples Check whether two 2-dimensinonal arrays of any type are equal. int[,] intArray1 = new int[4,4]{{432,31,32,43},{324,321,55,31},{110,34,543,13},{90,321,453,12}}; int[,] intArray2 = new int[4,4]{{110,43,120,301},{54,312,321,91},{99,45,21,12},{9,32,45,152}}; bool res = intArray1.SequenceEquals(intArray2); byte[,] barray1 = new byte[3,3]{{132,56,32},{30,45,10},{92,100,48}}; byte[,] barray2 = new byte[3,3]{{132,56,32},{30,45,10},{92,100,48}}; bool res = barray1.SequenceEquals(barray2); StandardDeviation(IEnumerable<double>) Calculates the standard deviation value of double numeric sequence. public static double StandardDeviation(this IEnumerable<double> values) Parameters values IEnumerable<double> The numeric sequence used as input Returns double Standard deviation double result Examples Calculates STDEVP() for long. double result = new long[]{394392,93993,323993,49240,49329}.StandardDeviation(); StandardDeviation(IEnumerable<int>) Calculates the standard deviation value of integer numeric sequence. public static double StandardDeviation(this IEnumerable<int> values) Parameters values IEnumerable<int> The numeric sequence used as input Returns double Standard deviation double result Examples Calculates STDEVP(). double result = new int[]{10,23,13,50,4}.StandardDeviation(); StandardDeviation(IEnumerable<long>) Calculates the standard deviation value of large integer numeric sequence. public static double StandardDeviation(this IEnumerable<long> values) Parameters values IEnumerable<long> The numeric sequence used as input Returns double Standard deviation double result Examples Calculates STDEVP() for doubles. double result = new double[]{0.1124,2.311,4.11,2.94,5.51).StandardDeviation(); TenPowerOf(int) Returns the value of 10 raised to the power of N value. public static object TenPowerOf(this int powOf) Parameters powOf int The Nth power value Returns object Result of the 10 in the power of N (can be float,int,ulong) Examples Calculates Nth power of number 10. long tenthousand = (4).TenPowerOf(); Remarks The function will not output negative values ToDoublePowerOf(IEnumerable<int>, double) Raises each number in a sequence to the Nth power(where N is double). public static IEnumerable<double> ToDoublePowerOf(this IEnumerable<int> values, double val) Parameters values IEnumerable<int> The list of integers to be raised to the Nth double power val double The Nth power double value Returns IEnumerable<double> Resulting list of double values raised to the Nth power Examples Calculates Nth double power of all integers in IEnumerable. int[] num_seq = { -990,-940,-770,-599,-543,-513,-482,-451,-445,-371,-240,-371,-940 }; var num = num_seq.AsEnumerable(); var result = num.ToDoublePowerOff(2.71); ToIntMatrix(string, int[,]) Present a sequence of numbers in a string, into a 2-dimensional matrix (letters and some characters are ommited) that has zero-fill for extra positions in case that array is larger than input. public static int[,] ToIntMatrix(this string StrNum, int[,] twodimOut) Parameters StrNum string The string of numbers to be used as input twodimOut int[,] The 2d matrix to be used as output Returns int[,] A 2-dimensional integer matrix, of prespecified dimensions N x M Examples Retrieve ONLY numbers from a string represented in a 2d matrix array. Note: Minimum array dimensions are 2x2 (used as default when input length less than 4 or when overallocating array space). int[,] result = \"2911\".ToIntMatrix(new int[4,4]); // Result OK with zero padding int[,] result = \"2962728abcs1119__1\".ToIntMatrix(new int[4,10]); //Result OK with zero padding int[,] result = \"2962728abcs1119__1\".ToIntMatrix(new int[4,2]); //Result OK, trimmed int[,] result = \"2962728abcs1119__1\".ToIntMatrix(new int[4,3]); //Result OK int[,] result = \"2962728abcs1119__1\".ToIntMatrix(new int[10,10]); //Result n/a, trimmed to 2x2 with zero padding int[,] result = \"29\".ToIntMatrix(new int[1,2]); //Result n/a, trimmed to 2x2 with zero padding ToIntPowerOf(IEnumerable<int>, int) Raises each number in a sequence to the Nth power. public static IEnumerable<long> ToIntPowerOf(this IEnumerable<int> values, int val) Parameters values IEnumerable<int> The list of integers to be raised to the Nth power val int The Nth power value Returns IEnumerable<long> Resulting list of large integers raised to the Nth power Examples Calculates Nth power of all integers in IEnumerable. int[] num_seq = { -990,-940,-770,-599,-543,-513,-482,-451,-445,-371,-240,-371,-940 }; var num = num_seq.AsEnumerable(); var result = num.ToIntPowerOf(3); VectorProduct(int[], int[]) Calculation of the dot product for integer vectors N -vector multiplication- public static IEnumerable<int> VectorProduct(this int[] v1, int[] v2) Parameters v1 int[] First integer array vector to multiply values from v2 int[] Second integer array vectr to multiply values with Returns IEnumerable<int> An integer IEnumerable containing the dot product values based on the initial vectors Examples Calculate and retrieve the dot product of multiplying two vectors as an IEnumerable. int[] vect1 = {2,3,3}; // First vector int[] vect2 = {3,2,2}; // Second vector var result = vect1.VectorProduct(vect2); // result is an IEnumerable list of multipl. values add(int, int) Binary addition of two integer numbers incl. carry digits. (negative or positive integer numerical values only) public static int add(this int from_x, int add_y) Parameters from_x int Numerical value x to perform the addition to add_y int Numerical value y to use in addition operation Returns int The integer result of the addition operation Examples Retrieve the result of adding integer y to underlying value x or vice-versa. int result1 = 100.add(93); int result2 = -90.add(54); subtract(int, int) Binary subtraction of two integer numbers incl. carry digits. (negative or positive integer numerical values only) public static int subtract(this int from_x, int sub_y) Parameters from_x int Numerical value x to perform the subtraction from sub_y int Numerical value y to use in subtraction operation Returns int The integer result of the subtraction operation Examples Retrieve the result of subtracting integer y from underlying value x or vice-versa. int result = -483.subtract(53); int result = -483.subtract(403);"
},
"docs/LinqDataCalc.html": {
"href": "docs/LinqDataCalc.html",
"title": "Namespace LinqDataCalc | Package Documentation",
"keywords": "Namespace LinqDataCalc Classes LinqDataCalcExtensions Main LinqDataCalcExtensions Class implementation. LinqDataCalcExtensions.Node Class implementation for BTree Nodes, BTree operations. Enums LinqDataCalcExtensions.AlgoType Enum implementation for selecting multiple algorithms for hamming distance used for integer comparison."
}
}