首页 > 其他分享 >90. 子集 IIC

90. 子集 IIC

时间:2024-03-16 13:33:06浏览次数:19  
标签:count numsSize returnSize int void 子集 IIC 90 array

/**
 * Return an array of arrays of size *returnSize.
 * The sizes of the arrays are returned as *returnColumnSizes array.
 * Note: Both returned array and *columnSizes array must be malloced, assume caller calls free().
 */
int temp[20];

int cmp(const void* a,const void* b){
    return *(int*)a-*(int*)b;
}

void dfs(int** array,int* nums,int numsSize,int* returnSize,int* column,int index,int count){
    if(index>numsSize) return;
    column[*returnSize]=count;
    array[*returnSize]=(int*)malloc(sizeof(int)*count);
    for(int i=0;i<count;i++) array[*returnSize][i]=temp[i];
    (*returnSize)++;
    if(index==numsSize) return;
    int use[30]={0};
    for(int i=index;i<numsSize;i++){
        if(use[nums[i]+10]==0){
            use[nums[i]+10]=1;
            temp[count]=nums[i];
            dfs(array,nums,numsSize,returnSize,column,i+1,count+1);
        }
        
    }
}

int** subsetsWithDup(int* nums, int numsSize, int* returnSize, int** returnColumnSizes) {
    (*returnSize)=0;
    qsort(nums,numsSize,sizeof(int),cmp);
    int* column=(int*)malloc(sizeof(int)*25000);
    int** array=(int**)malloc(sizeof(int*)*25000);
    dfs(array,nums,numsSize,returnSize,column,0,0);
    *returnColumnSizes=column;
    return array;    
}

结果:

标签:count,numsSize,returnSize,int,void,子集,IIC,90,array
From: https://www.cnblogs.com/llllmz/p/18076980

相关文章

  • 酷睿i9 14900hx参数 i914900hx核显什么水平
    i914900hx采用Intel7制程工艺,有24核心,其中8个高性能核心,16个高效能核心,共32线程,P核心最大睿频5.8GHz,全核最大睿频5.2GHz;E核心最大睿频/全核心最大睿频4.1GHz,L2缓存32MB、L3缓存36MB,TDP55W,最大可配置功耗为157W,内存支持DDR55600MHz。i914900hx怎么样这些点很重要 http:/......
  • leetcode代码记录(子集
    目录1.题目:2.我的代码:小结:1.题目:给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例1:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示......
  • 40. 组合总和 IIc
    /***Returnanarrayofarraysofsize*returnSize.*Thesizesofthearraysarereturnedas*returnColumnSizesarray.*Note:Bothreturnedarrayand*columnSizesarraymustbemalloced,assumecallercallsfree().*/inttemp[100];intcmp(const......
  • 无线电模块ODIN-W263-06B专为物联网网关应用而设计,QN9080-001-M17Y支持蓝牙和NFC的模
    本篇文章主要介绍三款无线模块:无线电模块ODIN-W263-06B专为物联网网关应用而设计,QN9080-001-M17Y支持蓝牙和NFC的模块,RS9116W-DB00-AB1多协议无线模块——明佳达1、ODIN-W2系列:具有Wi-Fi和蓝牙双模式(蓝牙BR/EDR和蓝牙低能耗v4.2)描述:ODIN-W2是一款紧凑而强大的独立多无线电模块......
  • 【力扣】分割等和子集(不太像01背包的01背包)
    题目描述分析出题人肯定是要尽量避免太直接的模版套用像这题一样,挖了很多坑。首先是题目很难让人第一时间联想到01背包这道题换一种描述方法就是找到一个子集,使子集的元素值总和刚好等于原集合之和的一半。也就是说是一个背包容量为sum/2的01背包问题另外,化解为这样之后你......
  • IIC的使用
    IIC特点主从通信高速IIC总线一般可达400kbps以上,用于低速设备通信传输距离短,一般设计PCB板时,外设嵌入pcb半双工通信,同一时间只能单项通信,任意时刻只能有一个主机IIC总线上可连接128个设备,但0x00地址不使用,因此127个设备,但实际设计情况,建议不超过8个,因为总线电容不能超过400......
  • Linux利用DS9490R读取多个温湿度
    1.DS9490R是一款由MaximIntegrated(原DallasSemiconductor)生产的USB至1-Wire®接口适配器。它允许计算机通过USB端口与遵循1-Wire协议的设备进行通信,非常适合需要通过PC进行数据采集和控制的应用。1.1基本特性接口类型:USB至1-Wire。连接方式:通过USB接口连接至PC,提供1-W......
  • LCR 159. 库存管理 IIIc
    经典快排/***Note:Thereturnedarraymustbemalloced,assumecallercallsfree().*/intdivide(int*a,inthead,inttail){intt=a[head];while(head<tail){while(head<tail&&a[tail]>t)tail--;if(head<tail)......
  • IIC SPI UART RS232 RS485的差异简介
    UART串口通信:异步通信,两根线(RXDTXD)交叉连接进行点对点的通信,通信双方要设置好相同的波特率(其实不用完全一样也可以只要相差不大,毕竟是通信双方不是同一时钟),发送数据一般是发送8位,有起始位、数据、检验、停止位。串口通信的抗干扰能力差,通信距离短。RS232协议:编程还是按串......
  • 142. 环形链表 IIc
    /***Definitionforsingly-linkedlist.*structListNode{*intval;*structListNode*next;*};*/structListNode*detectCycle(structListNode*head){structListNode*slow=head,*fast=head;while(fast&&fast->next......