#一到一百不能被三整除的数

for($i=1;$i<=100;$i++){
if($i%3 != 0){
$arr[] = $i;
}
}

var_dump($arr);

#水仙花数
for($i=0;$i<10;$i++){
for($j=0;$j<10;$j++){
for($k=0;$k<10;$k++){
$f=pow($i,3)+pow($j,3)+pow($k,3);
$g=$i*100+$j*10+$k;
if($f==$g){
$arrs[]=$g;
}
}
}
}

var_dump($arrs);

#回文数
for($i=11;$i<=99999;$i++){
$k = intval(strrev($i));
if($i == $k){
$array[] = $i;
}
}
echo "<pre>";
var_dump($array);
echo "</pre>";

#冒泡排序
function sort($arr){
for($i=0;$i<count($arr);$i++){
for($$j=0;$j<count($arr)-1;$j++){
if($arr[$j]>$arr[$j+1]){
$tem=$arr[$j+1];
$arr[$j+1]=$arr[$j];
$arr[$j]=$tem;
}
}
}
}

#选择排序
function sel_sort($arr) {
$len=count($arr);
for($i=0; $i<$len-1; $i++) {//控制循环多少次
$p = $i;//假设最小值的位置
for($j=$i+1; $j<$len; $j++) {//控制比较的次数
if($arr[$p] > $arr[$j]) {//比较得到最小值
$p = $j;//将最小值的位置保存在$p变量中
}
}
if($p != $i) {//一轮比较结束后,若最小值位置与假设位置不同,则将最小值位置换到$i处即可
$tmp = $arr[$p];
$arr[$p] = $arr[$i];
$arr[$i] = $tmp;
}
}
return $arr;
}

#插入排序
function ins_sort($arr) {
$len=count($arr);
for($i=1; $i<$len; $i++) {//控制循环多少次
$tmp = $arr[$i];//以一个值为指针和在他之前的值相比较
for($j=$i-1;$j>=0;$j--) {//控制比较的次数
if($tmp < $arr[$j]) {//如果指针小于数组值,则在数组值后插入一行,其值为$j数组值,将指针值赋予数组值,直到比较结束最小值被调至最前方
$arr[$j+1] = $arr[$j];
$arr[$j] = $tmp;
} else {
break;//如果一轮结束,没有小于的值则跳出循环
}
}
}
return $arr;
}

#快速排序
function far_sort($arr) {
$len = count($arr);
if($len <= 1) {
return $arr;
}
$base = $arr[0];//选择指针
$little = array();//小于指针的
$big = array();//大于指针的
for($i=1; $i<$len; $i++) {
if($base < $arr[$i]) {
$big[] = $arr[$i];
} else {
$little[] = $arr[$i];
}
}
$big = far_sort($big);
$little = far_sort($little);
return array_merge($little, array($base), $big);
}

#二分法排序
function erfenfa($arr,$k,$low=0,$high=0){
if(count($arr)!=0 && $high==0){
$high=count($arr);
}
if($low<=$high){
$mid=intval(($low+$high)/2);
if($arr[$mid]==$k){
return $mid;
}elseif($k<$arr[$mid]){
return erfenfa($arr,$k,$low=0,$mid-1);
}else{
return erfenfa($arr,$k,$mid+1,$high);
}
}else{
return false;
}
}

#自己在闲暇的时候写的例子,巩固的同时也相当于做个笔记,在以后的编程中多多进步,,,,,如果在程序中有什么需要改正的,希望读者可以提下意见,小女子感激不尽!!!!

php中的一些编程例子的更多相关文章

  1. .Net中的socket编程例子

    vb2010: '发送端代码Public Class Form1    Inherits System.Windows.Forms.FormPrivate Sub Button1_Click(ByVa ...

  2. 网游中的网络编程3:在UDP上建立虚拟连接

    目录 网游中的网络编程系列1:UDP vs. TCP 网游中的网络编程2:发送和接收数据包 网游中的网络编程3:在UDP上建立虚拟连接 TODO 二.在UDP上建立虚拟连接 介绍 UDP是无连接的,一 ...

  3. Python中的并发编程

    简介 我们将一个正在运行的程序称为进程.每个进程都有它自己的系统状态,包含内存状态.打开文件列表.追踪指令执行情况的程序指针以及一个保存局部变量的调用栈.通常情况下,一个进程依照一个单序列控制流顺序执 ...

  4. 读懂Java中的Socket编程

    Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一.如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的.本文会介绍一下基于TCP/IP的S ...

  5. 可爱的 Python : Python中的函数式编程,第三部分

    英文原文:Charming Python: Functional programming in Python, Part 3,翻译:开源中国 摘要:  作者David Mertz在其文章<可爱的 ...

  6. 读懂Java中的Socket编程(转)

    Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一.如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的.本文会介绍一下基于TCP/IP的S ...

  7. Java 中的函数式编程(Functional Programming):Lambda 初识

    Java 8 发布带来的一个主要特性就是对函数式编程的支持. 而 Lambda 表达式就是一个新的并且很重要的一个概念. 它提供了一个简单并且很简洁的编码方式. 首先从几个简单的 Lambda 表达式 ...

  8. [翻译]在 .NET Core 中的并发编程

    原文地址:http://www.dotnetcurry.com/dotnet/1360/concurrent-programming-dotnet-core 今天我们购买的每台电脑都有一个多核心的 C ...

  9. C#中的函数式编程:序言(一)

    学了那么久的函数式编程语言,一直想写一些相关的文章.经过一段时间的考虑,我决定开这个坑. 至于为什么选择C#,在我看来,编程语言分三类:一类是难以进行函数式编程的语言,这类语言包括Java6.C语言等 ...

随机推荐

  1. JS时间戳与日期类型格式相互转换

    function datetime_to_unix(datetime){     var tmp_datetime = datetime.replace(/:/g,'-');     tmp_date ...

  2. CheckStyle插件

    如今代码静态检查越来越重要,已经成为构建高质量软件的不可或缺的一个验证步骤.如果你使用的是java语言,那么CheckStyle则是一个利器. CheckStyle能够帮助程序员检查代码是否符合制定的 ...

  3. I - Long Distance Racing(第二季水)

    Description Bessie is training for her next race by running on a path that includes hills so that sh ...

  4. ubuntu安装体验

    本文记录一下昨晚及今天安装ubuntu系统的过程及体验 2016年6月13日09:36:11 更新 今天才有发现原来自己有个没填的坑 = = 那次安乌班图后第一感觉是很好用,新鲜了好几天,但是很快,新 ...

  5. API 之 MessageBox

    函数功能: MessageBox 函数用于显示一个模态对话框,其中包含一个系统图标. 一组按钮和一个简短的特定于应用程序消息,如状态或错误的信息.消息框中返回一个整数值,该值指示用户单击了哪个按钮. ...

  6. Apache无法启动解决方案

    Apache无法启动错误原因: 原因一:80端口占用例如IIS,另外就是迅雷.我的apache服务器就是被迅雷害得无法启用! 原因二:软件冲突装了某些软件会使apache无法启动如Dr.com 你打开 ...

  7. 协同办公平台Worktile体验分享(转)

    自从组建团队以来,做的每一个项目.每一次活动,电脑里就会存放了N个不同名称的相同文档, 工作内容.资源文档非常零散,严重影响了工作效率. 之前用Dropbox共享文档,结果被墙了.用印象笔记,结果一个 ...

  8. 如何实现button像a标签一样跳转页面

    这个实现起来很简单,如下: <a href="{% url 'cms:add' %}"> <button class="btn btn-default& ...

  9. http status 400,http 400,400 错误

    转载:http://blog.csdn.net/xu_zh_h/article/details/2294233 4 请求失败4xx 4xx应答定义了特定服务器响应的请求失败的情况.客户端不应当在不更改 ...

  10. C/S与B/S

    C/S架构简要介绍 在了解什么是B/S架构之前,我们有必要了解一下什么是C/S架构: C/S架构是第一种比较早的软件架构,主要用于局域网内.也叫 客户机/服务器模式. 它可以分为客户机和服务器两层:第 ...