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

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. Android Studio自定义注释模板及生成JavaDoc

    刚开始学习Android,使用了Android Studio IDE.为了将来生产JavaDoc,学习一下如何自定义注释模板. . 自定义注释模板 1. 通过 File –>Settings 或 ...

  2. PL/SQL分页查询

    create or replace procedure fenye(tabelname in varchar2,currentpage in number,pageSize in number,inW ...

  3. 获取mssqlserver与access数据库插入的当前行的id

    //mssqlserver public static int GetInsertId(string sql) { try { SqlCommand cmd = new SqlCommand(); u ...

  4. How Many Fibs?

    How Many Fibs? 点我 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  5. c语言 列出系统进程

    #include <stdio.h> #include "stdafx.h" #include <Windows.h> #include <strin ...

  6. SQL Server 中索引的禁用与删除

    主题 1. 禁用索引 alter index index_name on table_name disable; 主题 2. 删除索引 drop index table_name.index_name ...

  7. HeadFirst设计模式读书笔记(3)-装饰者模式(Decorator Pattern)

    装饰者模式:动态地将责任附件到对象上.若要扩展功能,装饰者提东了比继承更有弹性的替代方案. 装饰者和被装饰对象有相同的超类型 你可以用一个或者多个装饰者包装一个对象. 既然装饰者和被装饰对象有相同的超 ...

  8. HeadFirst设计模式读书笔记--目录

    HeadFirst设计模式读书笔记(1)-策略模式(Strategy Pattern) HeadFirst设计模式读书笔记(2)-观察者模式(Observer Pattern) HeadFirst设计 ...

  9. JAVA笔记1-00

    package chapter1; public class Demo1 { public static void main(String[] args) { System.out.println(& ...

  10. Jquery基础之事件操作

    事件是用户操作时页面或页面加载时引发的用来完成javascript和HTML之间的交互操作.常见的元素点击事件.鼠标事件.键盘输入事件等,较传Javascript 相比JQuery增加并扩展了基本的事 ...