首页 > 其他分享 >重新排列数组

重新排列数组

时间:2023-10-29 12:55:05浏览次数:33  
标签:numsSize 重新排列 nums int ret 数组

我的错误:将问题中引入了if语句,是问题变复杂了

优解:

int* shuffle(int* nums, int numsSize, int n, int* returnSize){     int *ret = (int*)malloc(sizeof(int)*n*2);     *returnSize = numsSize;     for(int i = 0; i < n; ++i){         ret[ 2*i ] = nums[i];     }         for(int i = n; i < numsSize; ++i){             ret[2*(i-n)+1] = nums[i];     }return ret; }   可以直接研究从0到n-1;这样子问题就变简单了,只需要两个遍历,就可以让数据进入新的数组,非常简洁。  

标签:numsSize,重新排列,nums,int,ret,数组
From: https://www.cnblogs.com/2874147746lijiacheng/p/17795763.html

相关文章

  • java 数组浅拷贝与深拷贝
    publicclassdemo{publicvoidfunc(int[]nums){int[]tempNums=newint[]{1,1,1,1,1,1};//浅拷贝//nums=tempNums;//深拷贝for(intj=0;j<nums.length;j++){nums[j]=tempNums[......
  • 数组的静态初始化和动态初始化
    publicclassArrayDemo02{publicstaticvoidmain(String[]args){//静态初始化:创建+赋值int[]a={1,2,3,4,5,6,7,8};System.out.println(a[0]);//动态初始化:包含默认初始化int[]b=newint[10];b[0]=10;......
  • C语言入门之数组之一维和二维----小白
    今天的介绍C语言数组的概念。数组的分类一维数组和多维数组。一维数组和二维数组,这是我们今天主要介绍的两种。一数组的概念。数组是一组相同类型元素的集合,我们在前面介绍了数据类型。他可以将多个相同类型的数据,放到一起。1.数组的数据不能为0,至少要放一个元素。或者对他进行初始......
  • Go语言数组与切片学习总结
    一.数组数组的定义:相同类型的数据集合go语言中数组的索引从0开始没有赋值的数值型数组,默认值为0数组一旦被创建,它的大小就是不可改变的(1)声明数组与打印var变量名[大小]变量类型//数组的声明varnums[4]int//数组的赋值nums[0]=1nums[1]=2nums[2]=......
  • 使用数组实现一个小顶堆
    堆也叫优先队列,可以在\(\mathcal{O(1)}\)时间里得到堆中的最小/大元素。堆在各种编程语言中都有实现,c++STL里面有priority_queue,java中是Priority_Queue,python里提供了heapp模块实现对堆的各种操作。堆可以分为小顶堆和大顶堆,顾名思义,小顶堆堆顶存储堆中的最小值,大顶堆堆顶存储堆......
  • PAT_B1008 数组元素循环右移问题
    一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0​A1​⋯AN−1​)变换为(AN−M​⋯AN−1​A0​A1​⋯AN−M−1​)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输入格式:每......
  • C#读取记事本,里面有600万条数据,放入数组时:System.OutOfMemoryException
     原因:使用文件流,然后读取文件内容,再解析的时候,会报内存溢出 处理办法:使用/n分隔///<summary>///通过记事本,获取CRM所有客户的某个字段///</summary>///<returns></returns>publicstaticList<string>GetFieldByText(str......
  • C++数组
    C++数组声明数组在C++中要声明一个数组,需要指定元素的类型和元素的数量,如下所示:typearrayName[arraySize];这叫做一维数组。arraySize必须是一个大于零的整数常量,type可以为任意有效的C++数据类型。例如:doublevalance[10];初始化数组doublebalance[5]={1000.0,2.0,......
  • C语言--数组
    数组:一维数组1.一维数组的创建数组是一组相同类型的元素的集合。数组的创建:数组的元素类型数组名常量表达式(指定数组的大小)type_tarr_name[const_n]数组创建的实例:#include<stdio.h>intmain(){chararr1[10];intarr2[10......
  • day 2 数组 977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵 Ⅱ
    977.有序数组的平方题目链接:977.有序数组的平方视频教程文章教程思路最直观的解法:暴力解题,每个数先平方,然后再快速排序,时间复杂度为O(n+nlogn)规律:该数组本身是非递减顺序,在平方后其实依然有顺序,左右两边大中间小。双指针利用观察到的规律,可以利用双指针在数......