radix-sort

    0热度

    1回答

    Im无法理解基数排序。我应该整理这个词的最后一个字母,就像从右向左整理,直到没有更多的字母被留下。 文本文件看起来像这样 酒吧 猫 苹果 错误 COG 跳跃 鹿茸 脚踝 熊 我的输出这样 脚踝 鹿茸 苹果 酒吧 熊 错误 跳跃 猫 COG 但我应该得到这样 酒吧 错误 猫 COG 熊 脚踝 苹果 雀跃输出 鹿角 感觉就像我接近有正确的代码,但我卡住了,不知道还有什么要做。这将不胜感激,如果我能得到

    1热度

    1回答

    我有麻烦,我从基数排序算法创建实现,但我认为我可以使用更少的内存,我可以!但是......我这样做是在使用后擦除矢量的元素。问题:执行3分钟vs 17秒。如何擦除元素更快?或...如何更好地使用内存。 sort.hpp #include <iostream> #include <vector> #include <algorithm> unsigned digits_counter(lo

    1热度

    2回答

    我必须通过使用基数排序来制作一个程序来对字符串进行排序(确切长度为7个字符)。我已经创建了一个函数来分别对每列进行排序。我的问题是如何使整个字符串移动,而不仅仅是一个字符。我真的很难看到它应该如何在C中工作。我做了一个数组“char strings [3] [8]”和“char output [3] [8]”以获得排序的3个字符串每个7个字符。例如排序这些字符串: strcpy(strings[0

    0热度

    1回答

    我正在研究一个程序,该程序利用RadixSort从文件中读取文字 并使用教授给我的算法以升序排序(要求对于此RadixSort按预期工作,所有条目必须是单词,并且所有单词必须具有相同的长度)。我写了我的RadixSort类: 编辑:请忽略initializeWords方法中的注释。他们在那里进行测试。 public class RadixSort implements RadixSortADT{

    -2热度

    1回答

    我正在写一个程序,它接受一个整数数组并将它们排序为基数16 8 10和2.我的函数适用于除2之外的所有基数。它不能正确地对数字进行排序。我一直在环顾四周,没有地方特别解释这个问题。我认为即时通讯应该使用移位(>> < <),但我不知道如何? void Sortfunc(int myarray[], int n, int base){ queue<int> bins[10]; int MAX=

    0热度

    1回答

    我正在尝试创建使用队列进行排序的基数排序。 我用我的队列类的代码是基本的,但它的工作原理: class Queue: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def enqueue(self, items): s

    0热度

    1回答

    考虑代码: a=runif(1000) microbenchmark::microbenchmark(order(a,method="radix")) microbenchmark::microbenchmark(sort.list(a,method="radix")) 运行代码order()更好的性能相比sort.list()我看。另一方面,如果我使用100000的样本大小,则两个函数的

    1热度

    1回答

    我读从this siteradix sort我感到困惑的第三for loop: for (i = n - 1; i >= 0; i--) { output[freq[(arr[i]/place) % range] - 1] = arr[i]; freq[(arr[i]/place) % range]--; } 为什么他们从结束,当我试图从0开始就启动它,它给我的错误的答案

    1热度

    1回答

    如何使用基数排序对数组中的某些浮点数据进行排序? 我认为我应该把所有数据乘以10的最小幂,这使它们成为整数。但我不知道我怎么能理解这种合适的力量。 这是用于排序整数数组的C++代码。 有人可以帮我做这个吗? #include<iostream> using namespace std; //Get maximum value in arr[] int findMax(int arr

    0热度

    1回答

    以下给出了整数基数排序的代码,该代码使用修改的排序排序来排序数组。存储区Sort使用一系列列表,其中列表的数量与基数相同(8 - 八进制,10 - 十进制,16 - 十六进制)。 通过基数操作获得的数字'i'被压入列表数组的List'i'中。其实它不是数字,而是输入数组中的索引被推入列表中。这需要扫描输入数组,因此需要的时间是O(n)。之后,按列表检索索引,即前一列表中的所有索引首先在处理移动到下