Vue 中的快速排序算法问题,它没有得到任何数据

Quick Sort Algo problem in Vue, it doesn't get any data

提问人:Goktug 提问时间:11/9/2023 更新时间:11/9/2023 访问量:17

问:

我无法使快速排序算法为此工作......如果我在没有算法的情况下实现,它会接收数据,但是当我使用快速排序实现时,它会停止接收数据......

在hijos子对象中,有一个名为“numero”的列 我想使用快速排序算法按升序对项目进行排序......

 <div v-for="hijo in sortedHijos" :key="hijo.uuid" class="flex">
                  <p class="text-brand-primary text-3xl flex mx-3 font-poppins">
                    {{ hijo.numero }}
                  </p>
                  <h3
                    class="faq-title text-2xl px-10 py-2 font-poppins"
                    style="max-width: 80%"
                  >
                    {{ hijo.nombre }}
                  </h3>
                </div>
  data() {
    return {

      sortedData: [],
      item: [],
      isToggled: {},
      hijosToggled: {},
      arrowClicked: false,
      // item: { hijos: [] },
    };
  },


computed: {
    sortedHijos() {
        return this.quicksort([...this.item.hijos]); 
    },
},

methods: {
    quicksort(arr) {
      return arr.length <= 1
        ? arr
        : [
            ...this.quicksort(arr.slice(1).filter(x => x.numero <= arr[0].numero)),
            arr[0],
            ...this.quicksort(arr.slice(1).filter(x => x.numero > arr[0].numero)),
          ];
    },

数据如下所示:

{
  "uuid": "",
  "nombre": "",
  ...
  ...
  "numero": 1,
  ...
  ...
  ... 
  ...
  ...
  "created_at": "",
  "updated_at": "",
  "deleted_at": null,
  "hijos": [
    {
      "uuid": "",
      "nombre": "",
      ...
      ...
      "numero": 3,
      ...
      ...
      ...
      ...
      "created_at": "",
      "updated_at": "",
      "deleted_at": null
    }
  ]
}


算法 vue.js 前端 vuejs3 快速排序

评论


答: 暂无答案