精华内容
下载资源
问答
  • php将一维数组转换成二维数组

    千次阅读 2019-02-21 16:25:20
    原来的数组  $fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');   期望变成的数组 $fruit = array( array('key'=>'a', 'val'=>'apple'), ...

    原来的数组 

    $fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
    

     

    期望变成的数组

    $fruit = array(
        array('key'=>'a', 'val'=>'apple'), 
        array('key'=>'b', 'val'=> 'banana'), 
        array('key'=>'c', 'val'=> 'cranberry')
    );

     

    实现的代码

    <?php
    $fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
    
    $tmp = array();
    reset($fruit);
    while (list($key, $val) = each($fruit)) {
        $tmp[] = array('key'=>$key,'val'=>$val);
    }
    print_r($tmp);
    ?>

     

    展开全文
  • 按最多8个数据来创建二维数组 categoryArr() { let categorys=this.categorys; let arr=[]; let minarr=[]; categorys.forEach((item,index)=>{ if(minarr.length===8) { minarr=[]; } if(minarr....

    按最多8个数据来创建二维数组

        categoryArr()
        {
          let categorys=this.categorys;
          let arr=[];
          let minarr=[];
          categorys.forEach((item,index)=>{
            if(minarr.length===8)
            {
              minarr=[];
            }
            if(minarr.length===0)
            {
              arr.push(minarr);
            }
            minarr.push(item);
          })
          return arr;
        }
    
    展开全文
  • # **int[] a={a,b,c} # int[] b={m,w,b} # 怎么转换成: # int[][] c ={{a,m},{b,w},{c,b}}**
  • 这两天,一个前端朋友在面试的笔试过程中遇到了一道类似于“用js实现将一个具有相同code值的一维数组转换成相同code值在一起的二维数组”的题目。他面试过后,把这个问题抛给了我,问我会实现吗?说实话,一开始,我...

    这两天,一个前端朋友在面试的笔试过程中遇到了一道类似于“用js实现将一个具有相同code值的一维数组转换成相同code值在一起的二维数组”的题目。他面试过后,把这个问题抛给了我,问我会实现吗?说实话,一开始,我也懵,我唯一能想起来的就是遍历这个一维数组,然后拿数组中的code值来做比较,但是真实现起来就没那么容易了,况且以前我也没有实现过这样的功能,平时的开发中好像也没遇到过这样的功能。

    来看看大概的笔试题吧:

    let arr = [
          {code: "China", name: "xiaohuai"},
          {code: "Africa", name: "neiLuoBi"},   
          {code: "Asia", name: "hanGuo"},
          {code: "China", name: "tnnyang"},
          {code: "Africa", name: "nanFei"},      
          {code: "China", name: "yangMan"}
    ]

    以上是一个具有相同code值的一维数组,需要转换成如下的二维数组:

    let arr = [
        [ {code: "China", name: "xiaohuai"}, {code: "China", name: "tnnyang"}, {code: "China", name: "yangMan"} ],
        [ {code: "Africa", name: "neiLuoBi"}, {code: "Africa", name: "nanFei"} ],
        [ {code: "Asia", name: "hanGuo"} ]  
    ]

    看明白了吧。

    那么就来看看如何实现这样的一个效果吧:

    let arr = [
          {code: "China", name: "xiaohuai"},
          {code: "Africa", name: "neiLuoBi"},   
          {code: "Asia", name: "hanGuo"},
          {code: "China", name: "tnnyang"},
          {code: "Africa", name: "nanFei"},      
          {code: "China", name: "yangMan"}
    ]
    
    var map = new Map();
    var newArr = [];
    arr.forEach(item => {
         map.has(item.code) ? map.get(item.code).push(item) : map.set(item.code, [item]);
    })
    
    newArr = [...map.values()];
        
    console.log(newArr);

    实现了一维数组转二维,那么再将转换后的二维数组转换为一维数组呢?还是直接上代码吧:

    let arr = [
        [ {code: "China", name: "xiaohuai"}, {code: "China", name: "tnnyang"}, {code: "China", name: "yangMan"} ],
        [ {code: "Africa", name: "neiLuoBi"}, {code: "Africa", name: "nanFei"} ],
        [ {code: "Asia", name: "hanGuo"} ]  
    ]
    
    //方法一:
    function reduceDimension(arr) {
          var reduced = [];
          for (var i = 0; i < arr.length; i++) {
              for (var j = 0; j < arr[i].length; j++) {
                  reduced.push(arr[i][j]);
              }
          }
          return reduced;
    }
    
    console.log(reduceDimension(arr));
    
    //方法二:
    console.log([].concat.apply([], arr));

    方法一是循环遍历,没啥说的。方法二有必要说一下,apply方法会调用一个函数,apply方法的第一个参数会作为被调用函数的this值,apply方法的第二个参数(一个数组,或类数组的对象)会作为被调用对象的arguments值,也就是说该数组的各个元素将会依次成为被调用函数的各个参数。

    本文参考:
    https://segmentfault.com/q/1010000015730645
    https://www.cnblogs.com/liveoutfun/p/9195927.html
    https://www.cnblogs.com/front-end-ralph/p/4871332.html

    转载于:https://www.cnblogs.com/tnnyang/p/10616011.html

    展开全文
  • 有一个一维数组,想把它变成m*n形式的位数组, $arr = array(....); // 一维数组 $m = ceil(count($arr)/n); $array = array(); for ($i = 0, $j = 0; $i < $m; $i++) { for ($k = 0; $k < n; $k++)...

    有一个一维数组,想把它变成m*n形式的二位数组,

    $arr = array(....); // 一维数组
    $m = ceil(count($arr)/n);
    $array = array();
    for ($i = 0, $j = 0; $i < $m; $i++) {
        for ($k = 0; $k < n; $k++) {
            $temp = $arr[$j++];
            if($temp)  $array[$i][$k] = $temp;
        }
    }
    

    转载于:https://www.cnblogs.com/justcodeit/p/3848339.html

    展开全文
  • public function getMoreArry($arry1,$arry_count) {  $b = array();  for($y=0;$y&lt;$arr_count;$y++){  for($x=0;$x&lt;1;$x++){  $b[$y][$x] = $arr[$y]; ...
  • 一维数组转换成二维数组【C++】

    千次阅读 2016-09-13 09:39:21
    数据转换C++程序 From shipeng #include #include //#include #include #include using namespace std; //int sque(); int S; /* int sque()//判断平方数,若否,则转换 { int m; cout 请输入:"; cin >> ...
  • 数组$district打印的结果如下:
  • 一维数组转换二维数组

    千次阅读 2018-12-15 17:05:18
    实际实现:将原本的一维数组转换二维数组,数组里面的每个元素为一个length为3的数组.在进行轮播的时候,循环两次进行输出 data(){ return{ hasWinArr:[],//一个一维数组 } }, methods:{ //处理假数据轮播图 ...
  • php二维数组转换成一维数组 function multi2array($array) { static $result_array = array(); foreach ($array as $key =&gt; $value) { if (is_array($value)) { multi2array($value); ...
  • PHP二维数组转换成一维数组

    千次阅读 2018-05-19 11:01:40
    array (size=2) 0 => array (size=1) 'order_id' => '868' (length=3) ...如果第二维是数字键名 那么直接这样就可以了: $result = array_reduce($user, 'array_merge' , array ())
  • 1.二维数组转换一维数组: 设二维数组a[i][j],数组a行数x行,列数y列; 一维数组b[n],数组b最多存储m=x*y个元素。 令x=3,y=4则:m=12 此时,数组a中元素的位置序号(i j)为: 00 01 02 03 10 11 12 13 20 21 22 ...
  • 二维数组转换成二级指针

    千次阅读 2019-04-12 14:23:17
    最近在写个顺时针打印矩阵的函数时,发现二维数组名不能传递给个二级指针。 #include <iostream> // 顺时针打印矩阵 void PrintMatrixClockWisely(int** numbers, int rows, int columns) { } int main...
  • 将两个一维数组转换二维数组 let values=[1,2,3], let dates=[a,b,c] values = dates.map((key,value)=>[key,values[value]]); console.log(values)
  • Vue源码中用到的二维数组 -> 一维数组 function normalizeArr(children) { for(let i = 0; i< children.length; i++) { if(Array.isArray(children[i])) { return Array.prototype.concat.apply([], ...
  • 截取字符串后,一般都会得到一个一维数组,有时需要把这个以为数组转相应行与列的二维数组。最大的不同便在于行数与列数的规定。下面是一个简单的例子,行与列可根据实际情况来取到,或规定。 /** * @author ...
  • 就是遍历数组元素,从头开始,依次往下,第个参数是上次的返回值,第个参数是下数组元素,首次的时候第个和第个参数分别是 array[0], array[1] ;   let flat=[[1,2,3],[4,5,6],[6,7,8]].reduce...
  • C# json 一维数组二维数组转换 写的非常详细,对大家有帮助
  •   本文就这么朴实无华且枯燥地向大家分享C#中: 一维数组二维数组 的相互转换(一维→二维;二维→一维)……希望能帮到有需求的小伙伴(*^▽^*)。全文完整代码(直接复制运行)如下: using System; ...
  • 1.一维数组二维数组 /// <summary> /// 一维数组转2维数组(矩阵) /// </summary> /// <param name="obj"></param> /// <param name="len">矩阵行数</param> /// <...
  • PHP二维数组转换一维数组

    千次阅读 2019-05-06 13:44:50
    //二维数组转换一维数组 function getarray($arr) { static $res_arr = array(); foreach ($arr as $key => $val) { if (is_array($val)) { getarray($val); } else{ ...
  • 使用场景举例:接口返回一个数组对象,展示时每行固定显示n个,则可将返回的数组转成二维数组[[...n], [...n]...]的形式循环展示。 分析:我们将一维数组,截取设定的长度,放入的一个新数组中。同时通过设定的长度...
  • 怎么最简单,快速将多维数组展开平铺为一维数组? 以下为博主的总结供参考:分为平铺展开的深度为2和全部平铺展开的: 先假设有个待展开数组: $arr = [ 'a' => [ 'a1' => 'nice100.net', 'a2' => 'good...
  • 定义二维数组 var arrts=[]; for(var k=0;k&lt;5;k++){ arrts[k]=new Array(); for(var j=0;j&lt;12;j++){ arrts[k][j]=data[m]; } } 将原数组放入二维数组中并将数据放入表格中 strs = ...
  • 目录 1 array_reduce函数法 2array_walk_recursive函数法 ...假设有下面二维数组: $user = array( '0' => array('id' => 100, 'username' => 'a1'), '1' => array('id' => 101, 'username...
  • string[][] sarr = new string[3][]; sarr[0] = new string[] { "1", "2", "3" }; sarr[1] = new string[] { "4", "5", "3" }; sarr[2] = new string[] { "1", "2" }; HashSet<string>...
  • Java语言怎么将二维数组转换一维数组?有没有类似flaten的方法呢 Java语言怎么将二维数组转换一维数组?有没有类似flaten的方法呢
  • C语言一维数组转换二维数组

    千次阅读 2016-02-26 09:26:00
    一维二维代码示例: #include <stdio.h> #include <stdlib.h> #define ROW 3 #define COL 2 int main(int argc, char *argv[]) { int arr1D[] = {1,2,3,4,5,6}; int arr2D[ROW][COL]...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 130,665
精华内容 52,266
关键字:

一维数组转换成二维数组