Merge Sort by Representation Reduces Memory Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Merge sort algorithms require significant additional memory for auxiliary arrays, leading to resource insufficiency and increased failure rates in data recovery systems, particularly when dealing with large data elements.
Innovation Solution
A two-phase merge sort by representation method that allocates a representation array with index values to sort data elements without moving them, reducing memory requirements by swapping data elements based on these indices, thereby eliminating the need for an auxiliary array.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional merge sort is implemented on arrays, then sorting can be performed efficiently with O(N log N) time complexity, but additional memory allocation of O(N) is required for auxiliary arrays
Solution Approach 1:
The patent creates a representation array that stores index values instead of actual data elements. This copy of index information allows the algorithm to track and sort data positions without requiring an auxiliary array of the same size as the original data, thereby reducing memory usage while maintaining sorting functionality
Solution Approach 2:
The representation array acts as an intermediary between the original data array and the sorting process. Instead of directly manipulating large data elements in an auxiliary array, the algorithm uses this intermediate index-based representation to control the sorting operations, reducing the memory burden
2Quantity of substance
If data elements are large in size, then data recovery systems can handle substantial data volumes, but memory resources become insufficient leading to increased failure rates
Solution Approach 1:
The patent extracts only the essential information needed for sorting (index values) from the large data elements. By separating the sorting control information from the actual data storage, the system can handle large data volumes without proportionally increasing the memory required for sorting operations, thus preventing memory-related failures
Data Source
AI summary
In one embodiment, a data recovery system sorts data elements of a data array by representation. The data recovery system allocates a representation array corresponding to a position of a corresponding data array element after sorting. A scan module of the data recovery system assigns index values to the representation elements of the representation array based on the values of the data elements of the data array without moving the data elements of the data array. A sort module of the data recovery system swaps the data elements of the data array based on the index values of the representation elements of the representation array corresponding to the data elements. The sort module swaps representation elements of the representation array corresponding to the swapped data elements of the data array.


