我正在尝试对我的数组进行升序和降序排序。不过,我似乎不知道如何正确地执行此操作。我尝试了不同的方法,但都不起作用。当我单击两个按钮时,应该会发生这种情况,一个ID为“stigande”升序,一个ID为“
爪哇语
$(document).ready(function(){
var $films = [];
// ändra bakgrundsfärg för textfield
$('#name').keyup(function(){
$('#name').css('background-color', 'white');
});
// ändra bakgrundsfärg för select lista
$('#options').change(function(){
$('#options').css('background-color', 'white');
});
// kör funktionen när knappen med id button klickas
$("#button").click(function(){
var $titelBetyg = [];
var $titel = $('#name').val();
var $betyg = $('#options').val();
// kontrollera om textfield är tom
if($titel == ""){
$('#name').css('background-color', 'red');
alert("Mata in titel.....");
}
// kontrollera om select lista inte är vald
else if($betyg == "0"){
$('#options').css('background-color', 'red');
alert("Välj betyg....");
}
else{
$titelBetyg.push($titel);
$titelBetyg.push($betyg);
$films.push($titelBetyg);
var $ul = $('#rightbar ul').empty();
if (!$ul.length){ // om ul inte finns
$ul = $("<ul>").appendTo('#rightbar'); // skapa en ny
}
// loopa igenom arrayen och placera innehållet i ul och li
for (var i=0; i<$films.length; i++){
$ul.append("<li>" + $films[i][0] + " " + $films[i][1] + "</li>");
}
$('#form').get(0).reset();
}
});
// kör funktionen när knappen med id stigande klickas
$('#stigande').click(function(a,b){
$films.sort();
});
// kör funktionen när knappen med id fallande klickas
$('#fallande').click(function(){
$films.reverse();
});
});
由于您要对数组数组进行排序,而不是仅对一系列名称进行排序,因此您需要执行一些稍微不同的排序操作。
尝试使用这样的东西:
function arrSort(arr, subkey){
//Default to 0 if no subkey is set
subkey = (subkey===undefined?0:subkey);
var a = arr.slice(0),
b = [], x;
//For each section in the array, create an array containing whatever we are trying to sort by and our unique ID
for (x in a){
b[x]=[a[x][subkey], x];
}
b=b.sort();
//Wipe out all the data that's currently in arr!
arr.splice(0, arr.length);
for (x in b){
arr.push(a[b[x][1]]);
}
return arr;
}
我相信你会想按$titel排序,所以你会想这样实现:
// kör funktionen när knappen med id stigande klickas
$('#stigande').click(function(a,b){
arrSort($films, 0);
});
// kör funktionen när knappen med id fallande klickas
$('#fallande').click(function(){
arrSort($films, 0);
$films.reverse();
});
我想按第三个和第一个元素对元组数组进行排序,因此我使用了以下代码: 我的问题是,在前面的例子中,我可以按第三个元素和第一个元素的升序排序,也可以按它们的降序排序(使用反向)。但是如何按第三个元素的升序和第一个元素的降序排序。 请在你的回答中考虑以下情况: 在这种情况下,我不知道内部数组的确切大小(取决于我读入该数组的文件模式),我想按侧中的所有项进行排序(一些升序和一些降序)。 编辑:看起来,我明
有人能提供帮助,如何检查排序降序数组以及?干杯!
我有数据。表中有大约300万行和40列。我希望在组内按降序对该表排序,如以下sql模拟代码: 数据中是否存在等效的方法。这张桌子可以吗?到目前为止,我必须将其分解为两个步骤: 这非常快,只需要几秒钟。 这一步需要更长的时间(5分钟)。 更新:有人评论要执行<code>X 我的方法是:setkey()然后是order(-Month) 我现在的问题是:如果我想按年、MemberId和一个又一个排序(年
我有98000个美国家庭街道地址,我需要按照“步行”的顺序进行排序,也就是说,按照你要走的顺序,沿着街道的一侧走,然后穿过街道往回走。 所需的df结果,对奇数街道编号进行升序排序,然后对偶数街道编号切换到降序排序。[抱歉,第一个问题,还没有资格复制Jupyter笔记本的图像] 4列:数字、街道、城镇、偶数 “编号”列的预期结果:1231 1233 1235 1237 1239 1238 1236
问题内容: 令我惊讶的是,以前没有提出过这个具体问题,但我的确没有在SO或文档中找到它。 假设我有一个包含整数的随机numpy数组,例如: 如果对它进行排序,则默认情况下我将获得升序: 但我希望解决方案按 降序 排序。 现在,我知道我可以永远做: 但这最后的陈述 有效 吗?它不是按升序创建副本,然后反转此副本以反转顺序获得结果吗?如果确实如此,是否有有效的选择?看起来好像不接受参数来更改排序操作中
考虑下面的哈希图: 具有诸如 我需要按值对hashmap进行降序排序,但如果值相等,则按键进行升序排序: 到目前为止,我试着分别按键排序,然后按值排序,但我不相信这种方法。除了创建更多的hashmaps之外,还有什么好方法呢?