运行quicksort时javascript崩溃

病态码

我正在尝试用JavaScript编写quicksort并显示排序后的输出。但是,每当我运行execute()函数时,程序就会挂起并停止响应。为什么是这样?我对javascript不太熟悉,我只是从Java代码中翻译过来的。但是我只是不明白为什么它不起作用。这里的代码。

<script type="text/javascript">
function exchange(a, i, j) {
   var k = a[i];
   a[i] = a[j];
   a[j] = k;
}
function partition(a2, lo, hi) {
   var i2 = lo;
   var j2 = hi + 1;
   var v = a2[lo];
   while (true) {
       while (a2[++i2] < v) {
          if (i2 == hi) {
              break;
          }
       }
       while (v < a2[--j2]) {
         if (j2 == lo) {
            break;
         }
       }
       if (i2 >= j2) {
          break;
       }
       exchange(a2, i2, j2);
   }
   exchange(a2, lo, j2);
   return j2;
}
function sort(a3, lo2, hi2) {
   var j3 = partition(a3, lo2, hi2);
   sort(a3, lo2, j3 - 1);
   sort(a3, j 3+ 1, hi2);
}
function sort(a4) {
   sort(a4, 0, a.length - 1);
}
function execute() {
   var array = document.getElementById("texts").value.split(' ');
   sort(array);
   for (a in array) {
       document.write(array[a] + "<br>");
   }
}
</script>
je

除非您只是出于娱乐目的而实现快速排序,否则请考虑使用sort()Array对象上的方法:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort(); // result: Apple,Banana,Mango,Orange

在对数字进行排序时,传递一个函数来sort()确定是按升序还是降序排序:

var numbers = [2,41,5,2,16,7];
numbers.sort(function (a,b) { return a-b; });
// result: 2,2,5,7,16,41

如果您只是想在JavaScript中实现快速排序,请考虑阅读以下内容:http : //www.nczonline.net/blog/2012/11/27/computer-science-in-javascript-quicksort/它很好地介绍了该算法,并提供了一些示例代码。

参考:https :
//developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

运行python时GVIM崩溃

来自分类Dev

C Quicksort在订购其他类型的数组时使程序崩溃

来自分类Dev

JavaScript在添加<br>时崩溃

来自分类Dev

运行循环以禁用控件时,Excel崩溃

来自分类Dev

运行SDL2时Xcode崩溃

来自分类Dev

代码::块在运行项目时崩溃

来自分类Dev

PhantomJS在运行测试套件时崩溃

来自分类Dev

运行项目时Xcode 6.1崩溃

来自分类Dev

运行代码时,乌龟屏幕崩溃

来自分类Dev

运行生产版本时React App崩溃

来自分类Dev

运行DAG时,气流计划程序崩溃

来自分类Dev

运行循环以禁用控件时,Excel崩溃

来自分类Dev

运行此功能时程序崩溃

来自分类Dev

运行简单的Ball App时App崩溃

来自分类Dev

运行此代码时,python shell 崩溃

来自分类Dev

并行运行Quicksort和Mergesort来测量时间-JavaScript?

来自分类Dev

Javascript 网页停止运行、无响应/崩溃

来自分类Dev

C ++ QuickSort算法不断崩溃

来自分类Dev

Windows Store Cordova App + WinJS:应用程序启动时崩溃并显示JavaScript运行时错误

来自分类Dev

当条目> = 10时javaScript quicksort不起作用

来自分类Dev

当条目> = 10时javaScript quicksort不起作用

来自分类Dev

当我运行硒单元测试时,Firefox崩溃

来自分类Dev

击中中断或发生崩溃时,获取gdb以运行命令

来自分类Dev

运行宏时变量数组“损坏”-Excel崩溃

来自分类Dev

运行用户脚本时setInterval使我的浏览器崩溃?

来自分类Dev

由于LLDB,Xcode在尝试运行项目时崩溃

来自分类Dev

在tmux下运行Selenium和Capybara时Chrome页面崩溃

来自分类Dev

运行示例时,Rayshader plot_gg崩溃

来自分类Dev

运行用户脚本时setInterval使我的浏览器崩溃?

Related 相关文章

热门标签

归档