/**先将链表反转,再将反转后的链表存储在新创建的数组中,最后返回数组的首地址。

  • struct ListNode {
  • int val;
  • struct ListNode *next;
  • };
  • C语言声明定义全局变量请加上static,防止重复定义 / /*
  • 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
  • @param listNode ListNode类
  • @return int整型一维数组
  • @return int* returnSize 返回数组行数 */

int* printListFromTailToHead(struct ListNodelistNode, int returnSize ) { //判空 if(listNode==NULL)return -1; int len=0; struct ListNodep=listNode; while(p){ p=p->next; len++; } inttempArr=(int *)malloc(len *sizeof(int)); p=listNode; for(int i=len-1;i>=0;i--){ tempArr[i]=p->val; p=p->next; } *returnSize=len; return tempArr; }