用js用if判断a,b,c三个数冒泡排序
时间: 2023-04-10 12:00:52 浏览: 53
可以回答这个问题。以下是用 JavaScript 实现冒泡排序的代码:
```javascript
function bubbleSort(a, b, c) {
var arr = [a, b, c];
var len = arr.length;
for (var i = 0; i < len - 1; i++) {
for (var j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
// 示例
var result = bubbleSort(3, 1, 2);
console.log(result); // [1, 2, 3]
```
相关问题
用js写一个冒泡排序的表格
好的,以下是使用 JavaScript 实现冒泡排序并生成表格的代码示例:
HTML 代码:
```html
<table id="sortTable">
<thead>
<tr>
<th>序号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>张三</td>
<td>80</td>
</tr>
<tr>
<td>2</td>
<td>李四</td>
<td>90</td>
</tr>
<tr>
<td>3</td>
<td>王五</td>
<td>75</td>
</tr>
<tr>
<td>4</td>
<td>赵六</td>
<td>85</td>
</tr>
</tbody>
</table>
```
JavaScript 代码:
```js
// 获取表格元素
const table = document.getElementById("sortTable");
// 获取表格中的数据
const data = [];
const tbody = table.getElementsByTagName("tbody")[0];
const rows = tbody.getElementsByTagName("tr");
for (let i = 0; i < rows.length; i++) {
const row = rows[i];
const cells = row.getElementsByTagName("td");
const rowData = [];
for (let j = 0; j < cells.length; j++) {
rowData.push(cells[j].innerText);
}
data.push(rowData);
}
// 冒泡排序
for (let i = 0; i < data.length - 1; i++) {
for (let j = 0; j < data.length - 1 - i; j++) {
if (parseInt(data[j][2]) > parseInt(data[j + 1][2])) {
const temp = data[j];
data[j] = data[j + 1];
data[j + 1] = temp;
}
}
}
// 生成排序后的表格
const newTbody = document.createElement("tbody");
for (let i = 0; i < data.length; i++) {
const newRow = document.createElement("tr");
for (let j = 0; j < data[i].length; j++) {
const newCell = document.createElement("td");
newCell.innerText = data[i][j];
newRow.appendChild(newCell);
}
newTbody.appendChild(newRow);
}
table.replaceChild(newTbody, tbody);
```
以上代码会将表格按照第三列(成绩)从小到大进行排序,并生成排序后的表格。
用vue写个冒泡排序
好的,以下是Vue.js的冒泡排序代码:
```vue
<template>
<div>
<h1>冒泡排序</h1>
<div>
<label>请输入待排序的数组:</label>
<input type="text" v-model="arrStr">
<button @click="sort">排序</button>
</div>
<div v-if="sortedArr.length > 0">
<p>排序前:{{ arr }}</p>
<p>排序后:{{ sortedArr }}</p>
</div>
</div>
</template>
<script>
export default {
data() {
return {
arrStr: '',
arr: [],
sortedArr: []
}
},
methods: {
sort() {
// 将输入的字符串转换成数组
this.arr = this.arrStr.split(',').map(item => parseInt(item));
const n = this.arr.length;
for (let i = 0; i < n; i++) {
for (let j = 0; j < n - i - 1; j++) {
if (this.arr[j] > this.arr[j+1]) {
[this.arr[j], this.arr[j+1]] = [this.arr[j+1], this.arr[j]];
}
}
}
this.sortedArr = this.arr;
}
}
}
</script>
```
以上代码中,我们使用了Vue.js框架来实现冒泡排序。在模板中,我们使用了一个文本框和一个按钮,用于输入待排序的数组和触发排序操作。在数据中,我们定义了三个变量:`arrStr`表示输入的待排序数组字符串,`arr`表示待排序的数组,`sortedArr`表示排序后的数组。在`sort`方法中,我们首先将输入的字符串转换成数组,并使用双重循环实现冒泡排序,最后将排序后的数组赋值给`sortedArr`变量。你可以通过在页面中输入待排序的数组并点击“排序”按钮来进行排序。