教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 如何用PHP实现数组中偶数位置元素大于奇数位置元素?

如何用PHP实现数组中偶数位置元素大于奇数位置元素?

发布时间:2021-01-14   编辑:jiaochengji.com
教程集为您提供如何用PHP实现数组中偶数位置元素大于奇数位置元素?等资源,欢迎您收藏本站,我们将为您提供最新的如何用PHP实现数组中偶数位置元素大于奇数位置元素?资源
本篇文章主要给大家介绍如何用PHP重新排列数组,并使偶数位置的元素大于奇数位置的元素。

给定一个包含n个元素的数组A,根据以下关系对数组进行排序:

如果i是偶数,则A[i] >= A[i-1]。

如果i是奇数,则A[i] <= A[i-1]。

打印结果数组。

例子:

输入:A[] = {1,2,2,1} 输出:1,2,1,2  注: 对于第一个元素,1 1,i = 2是偶数。 第三个元素1 1,i = 4是偶数。  输入:A[] = {1,3,2} 输出:1 3 2 注: 这里,数组也按照条件排序。 1 1和2 < 3。

观察该数组由[n/2]偶数位置的元素组成。如果我们把最大的[n/2]元素分配到偶数位置,其余的元素分配到奇数位置,我们的问题就解决了。因为奇数位置的元素总是小于偶数位置的元素,因为它是最大元素,反之亦然。排序数组并在偶数位置分配第一个[n/2]元素。

以下是上述方法的PHP实现方法:

<?php  // PHP程序重新排列数组中的元素,使偶数位置的元素大于奇数位置的元素    function assign($a, $n)  {             //排序数组     sort($a);         $p = 0; $q = $n - 1;      for ($i = 0; $i < $n; $i  )       {                     // 分配具有最大元素的索引         if (($i   1) % 2 == 0)              $ans[$i] = $a[$q--];             // 用剩余元素分配奇数索引         else             $ans[$i] = $a[$p  ];      }         for ($i = 0; $i < $n; $i  )           echo($ans[$i] . " ");  }     $A = array( 1, 3, 2, 2, 5 );  $n = sizeof($A);  assign($A, $n);

输出:

  1 5 2 3 2

相关推荐:《PHP教程》

本篇文章就是关于用PHP重新排列数组,并使偶数位置的元素大于奇数位置的元素的方法介绍,希望对需要的朋友有所帮助!

以上就是如何用PHP实现数组中偶数位置元素大于奇数位置元素?的详细内容,更多请关注教程集其它相关文章!

  • 本文原创发布教程集,转载请注明出处,感谢您的尊重!
  • 您可能感兴趣的文章:
    如何用PHP实现数组中偶数位置元素大于奇数位置元素?
    CSS3选择器之学习笔记
    javascript数组的操作方法push,pop,shift,unshift等详解
    JQuery 选择器、过滤器介绍
    jquery子元素过滤选择器使用示例
    JQuery 常用方法基础教程
    jQuery 方法大全方便学习参考
    js数组操作(js数组创建、js数组访问等)
    PHP学习之插入排序的实现
    css的选择器的详细介绍

    [关闭]
    ~ ~