分布式系统中的插入排序

发布于 2024-11-30 18:12:48 字数 76 浏览 1 评论 0原文

插入排序如何处理分布式系统中数组的多个副本? 我问这个问题是因为读取数据比写入数据更容易。 就更新次数而言,分布式系统中算法的成本是多少?

How does insertion sort deal with multiple copies of an array in a distributed system?
I ask because it is easier to read data than to write it.
What will be the cost of the algorithm in a distributed system in terms of the number of updates?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

云柯 2024-12-07 18:12:48

这完全取决于您的分布式插入排序版本。一种解决方案如下:

  1. 数组 A(具有 n 个元素)被系统中的所有节点共享。
  2. 数组 A 可以分为子数组 A1 、 A2 、 A3 、 ... 、 Ap ,其中 p 是系统中机器的数量。该分区是分布式执行的。也就是说,每个节点找到其子数组的下界和上界。 (这可以通过查找中位数、分割数组并再次查找中位数等来完成。)
  3. 现在,每个节点都可以使用插入排序对其切片进行排序。
  4. 每个节点中已排序的子数组可以通过归并排序或插入排序进行合并。

注意:通过计算更新次数来衡量分布式算法的有效性是不正确的。只要同时执行许多更新,就应考虑执行的总时间复杂度。

It totally depends on your version of distributed insertion sort. One solution can be as follows:

  1. Array A (with n elements) is shared to all nodes in the system.
  2. Array A can be partitioned into sub-arrays A1 , A2, A3, ... , Ap, where p is the number of machines in the system. This partitioning is performed distributed. That is to say, each node finds the lower bound and the upper bound of its sub array. (this can be done by finding medians and the splitting the array and the finding the median again and so on.)
  3. Now, each node can sort its slice using insertion sort.
  4. The sorted sub-arrays in each node can be merged either through merge sort of insertion sort.

Note: It is not right to measure the effectiveness of a distributed algorithm by counting the number if updates. As far as many updates are performed concurrently, the total time complexity of execution should be taken into consideration.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文