Node* ReverseList ( Node *head ) { if ( head == NULL || head->next == NULL ) return head; Node *p1 = head ; Node *p2 = p1->next ; Node *p3 = p2->next ; p1->next = NULL ; while ( p3 != NULL ) { p2->next = p1 ; p1 = p2 ; p2 = p3 ; p3 = p3->…
php实现反转链表(链表题一定记得画图)(指向链表节点的指针本质就是一个记录地址的变量)($p->next表示的是取p节点的next域里面的数值,next只是p的一个属性) 一.总结 链表反转两种实现方式:a.头插法(遍历一遍链表即可实现链表反转)  b.借助数组反转(遍历一遍链表将数值存在数组,反转数组,将数组里面的值尾插法插入链表,返回链表) 链表题一定记得画图 指向链表节点的指针本质就是一个记录地址的变量($p=链表,$p里面记录的就是一个地址),节点的next域里面记录的是下一个变量的地…
题目:有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a,具体实现如下: #include<stdlib.h> #include<stdio.h> int swap_ptr(int ** pA, int ** pB) {     if (pA == NULL || pB == NULL)     {         return 0;     }     int * pTemp = *pA;     *pA = *pB;…
1050: 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 154  Solved: 112[Submit][Status][Web Board] Description 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换. Input 一个3x3的矩阵 Output 转置后的矩阵 Sample Input 1 2 3 4 5 6 7 8 9 Sample Output 1 4 7…
题目:有一个函数int getNum(),每运行一次可以从一个数组V[N]里面取出一个数,N未知,当数取完的时候,函数返回NULL.现在要求写一个函数int get(),这个函数运行一次可以从V[N]里随机取出一个数,而这个数必须是符合1/N平均分布的,也就是说V[N]里面任意一个数都有1/N的机会被取出,要求空间复杂度为O(1). 解法:设置一个整形num,用来存放get()返回的数.调用getNum()从V[N]取数,按一定概率存入num中(覆盖以前的),直到getNum()返回NULL.设…
“用C语言写一个函数测试当前机器的大小端模式”是一个经典的笔试题,如下使用两种方式进行解答: 1. 用union来测试机器的大小端 #include <stdio.h> union test { int a; char b; }; int endian_test(void) { union test t1; t1.a = ; return t1.b; } int main(void) { int i = endian_test(); ) { printf("is little end…
算法!用C#写一个函数,在一个数组中找出随意几个值相加等于一个值比如,数组{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20}  要找出那些数相加等于100 解决方案一: #region 解决方案一 , , , , , , , , , , , , , , , , , , , }; List<List<int>> mylist = new List<List<int>>(); int length = mya…
解题: 假如现在有一堆长度大于3小于9的电话号码,用座机呼叫,如果出现这样的号码[123和12345]那么12345将永远不会被拨出,因为拨到123的时候电话已经呼出了,试写一个函数输出所有不能被呼出的电话号码[指定传入参数类型如示例所示] 函数参数示例: public void function(int [] numbers){} package JingDian; public class Pnumber { public static void main(String[] args){ i…
没做出来 第四题 (List)写一个函数reverseList,该函数能够接受一个List,然后把该List 倒序排列. 例如: List list = new ArrayList(); list.add(“Hello”); list.add(“World”); list.add(“Learn”); //此时list 为Hello World Learn reverseList(list); //调用reverseList 方法之后,list 为Learn World Hello package…
package com.rui.test; import java.util.Random; /** * @author poseidon * @version 1.0 * @date:2015年10月25日 上午11:12:24 * @description: 面试题-->写一个函数,返回一个数组中所有元素被第一个元素除的结果 * 陷阱: * 1.循环需要倒着写,为什么? * 想想顺着写循环的结果,第一个元素的值会发生变化后面再除就会有问题 * 2.需要考虑除数为零的边界 * 考察: * 面试…