zoukankan      html  css  js  c++  java
  • PHP面试编程

    1:1,2,3,5,8,13,21.....编程写出第n个

    function done($first,$second){
    $n=$first + $second;
    if($n > 100) return;
    echo $n .",";
    done($second,$n);
    }
    $result=done(1,1);
    echo $result;

    2: 一个整型数组,求数组中出现次数最多的元素,时间复杂度是多少:

    function repeatMostValues($array){
    $new_array=array_count_values($array);
    arsort($new_array);
    $max_counts=reset($new_array);
    foreach($new_array as $k=>$v){
    if($v == $max_counts){
    $values_array[]=$k;
    }
    }
    return $values_array;
    }

    $array = array(1, 1, 1,1,1,54, 3,4, 3,4, 3, 14, 3,4, 3,7,8,9,12,45,66,5,7,8,9,2,45);
    $result=repeatMostValues($array);
    var_dump($result);

    时间复杂度是o(n)

    3:求一个字符串中只出现1次的第一个字符:

    function search_char($str){
    $len=strlen($str);
    $arr=array();
    for($i=0;$i<$len;$i++){
    $item=$str{$i};
    if(isset($arr[$item])){
    $arr[$item]++;
    }else{
    $arr[$item]=1;
    }
    }
    foreach($arr as $k=>$v){
    if($v==1){
    $a[]=$k;
    }
    }
    return $a;
    }
    $str="aabssddgjk";
    $re=search_char($str);
    $value=$re[0];
    $position=strpos($str,$value);
    var_dump($position);

     

    一个SQL查询出每门课程的成绩都大于80的学生姓名

    name kecheng fenshu 
    张三 语文 81 
    张三 数学 75 
    李四 语文 76 
    李四 数学 90 
    王五 语文 81 
    王五 数学 100 
    王五 英语 90

    SQL1:

     select name from stu
    group by name
    having name not in (
    select name from stu
    where score <80)
    SQL2:
     SELECT S.name 

    FROM Student S
    GROUP BY S.name 

    Having MIN(S.score)>=80
     
     
  • 相关阅读:
    H.264编码之DCT变换原理
    颜色空间转换
    jdbc 大数据存储 图片读取
    spring 事务配置
    Cglib代理
    jdk代理
    spring装配bean
    map 常用方法
    list map set常用方法之list
    calendar 类 用法
  • 原文地址:https://www.cnblogs.com/hupengyin/p/7382424.html
Copyright © 2011-2022 走看看