返回列表 发新帖

php实现两表合并成新表并且有序排列的方法

434.5k 10
swmozowtfl 发表于 2015-7-14 22:20:33|湖北 | 查看全部 阅读模式
具体实现方法如下:
( E! d% t, q5 [; D0 l+ Z* S1 F% B* f- `代码如下:
. |, q2 h+ v3 @8 u
<?php ; P2 x; L8 B# C- {" d6 X- w2 \& I
/** " B/ [. J5 i6 N9 f
la (3,5,8,11) 4 a, r. m* d$ ^3 T; g1 b) H
lb(2,6,8,9,11,15)
8 v- q! Q, N0 a! u合并为lc,有序排列。 5 C+ ?6 @2 D/ q
用php实现,不能用sort之类的函数!!!!
8 O$ ~& c1 v5 m$ p" k% J& Y**/ $ b0 \  P/ R+ P4 n7 k
class union {
( ]1 b0 H/ E7 _# ~2 ~var $lista = array();
/ N! C$ C  h1 s% `- Dvar $listb = array(); % ^: Q$ q$ k$ H- S; x: D8 K
var $listc = array();
) h) g! U. c  f5 {" r; f" N8 Z6 m9 n% P4 s
function getlenght($arr) { //获得表长度 . @/ [; b4 W3 f( u1 O
return count($arr);
- E- C2 a! ^) T0 `} ! q2 L  F8 P/ q9 O; D2 d7 D

- ?: o, |+ x2 ]1 Gfunction getelement($arr, $n) { //获取表中第n个元素,返回 1 X' h1 T: y" t  y
return $e = $arr[$n] ? $arr[$n] : ''; - b, U5 E. X3 i/ F
}
& U, H- k4 e2 M. Z0 ?5 n" H5 N* ^8 G7 I4 s4 {! H
function listinsert($arr, $e) { //表末尾插入元素 1 P5 Q+ a' L. M' r
$arr[] = $e;
" r/ o* N8 R% S3 ireturn $arr; # P6 M: C/ Y. F( l
}
, V( q5 D  @: A6 W0 {}
. S2 h" X3 K  L: r$phpig = new union();
0 R7 f4 i$ ?) x: f/ U- s$lista = $phpig->lista = array(3, 5, 8, 11); + T" m& Z9 G6 o5 S( E
$listb = $phpig->listb = array(2, 6, 8, 9, 11, 15);
" q: {9 |/ T1 p2 s$listc = $phpig->listc;
9 X5 W4 f- p. ~$lena = $phpig->getlenght($lista); //取得表大小
9 @( E1 G4 V3 ?. B! X$ [: i$lenb = $phpig->getlenght($listb);
* ]2 a, V' ]# m2 E7 h$i = $j = 0; 5 Y( y  I' y1 F7 H6 y3 h
while($i < $lena && $j < $lenb) { * c3 u) N: I+ s3 i( p* s/ `4 m) e
$ea = $phpig->getelement($lista, $i);
  X9 p* @7 D+ q$eb = $phpig->getelement($listb, $j); 3 ^9 r' y# G" Y1 O
if($ea <= $eb) { 5 k) i; l; z9 \  {' z
$listc = $phpig->listinsert($listc, $ea); 5 k. y  E0 @3 P
++$i;
3 ]9 M# }& c0 }+ T} else { - W$ t: [- v+ ?( a
$listc = $phpig->listinsert($listc, $eb);
% ]9 N- p- b  S% y++$j; % {4 `  S! Y/ ]/ G1 J3 F6 G. \* s
} 3 W$ H& r6 ]: c+ ^
}
9 z. L6 H- m8 {7 t* {9 ]while($i < $lena) {
- W! p, l/ ~$ h% l0 j4 q6 r- o$ea = $phpig->getelement($lista, $i);
$ R/ P8 g( v0 C4 ?' a- d5 {4 y- ~$listc = $phpig->listinsert($listc, $ea); ) D" _6 i- O4 ]
++$i;
; h2 p" C$ E, s" n( S6 |# G}- M1 {. ~0 ]* ~
while($j < $lenb) {
! D. i6 `/ `8 o$eb = $phpig->getelement($listb, $j);
, _/ A4 [6 ?+ Z% V7 y3 Y$listc = $phpig->listinsert($listc, $eb); / U2 Q$ h2 b5 @* Y" C
++$j;
0 O  o% C) |$ {3 B! w}
, m2 v$ ?) H: Eprint_r($listc);
7 U" p( ^! J7 C$ K) {/ X9 C?>7 P4 z, C7 f. h2 `

0 u0 x# o% ?" v: \) l- }更多网页制作信息请查看: 网页制作

回复|共 10 个

seazvyt 发表于 2015-9-29 22:53:18|中国 | 查看全部
我刚来~~~嘿嘿~~此声明最终解释权归本人所有。
bqtklouu 发表于 2015-9-29 22:53:22|美国 | 查看全部
楼猪.重量级人物阿.
bqtklouu 发表于 2015-9-29 22:53:33|摩洛哥 | 查看全部
要相信自己~智商为0
wwdu926a 发表于 2015-9-29 22:53:24|韩国 | 查看全部
明天我给发过来
tohme 发表于 2015-9-29 22:52:34|印度 | 查看全部
这个站一周前刚刚有了点起色
seazvyt 发表于 2016-1-15 21:02:58|Reserved | 查看全部
这篇帖子构思新颖,题材独具匠心,段落清晰,情节诡异,跌宕起伏,主线分明,引人入胜,平淡中显示出不凡的文学功底,可谓是字字珠玑,句句经典,是我辈应当学习之典范(不好意思回错帖了
wwzcdenleclv 发表于 2016-1-15 21:04:25|台湾 | 查看全部
哦~~~明白了....
seazvyt 发表于 2016-1-15 21:04:12|美国 | 查看全部
感谢党和人民的关爱~~~
alapScady 发表于 2016-1-15 21:03:18|澳大利亚 | 查看全部
我的我的 忘记了 呵呵
wwzcdenleclv 发表于 2016-1-15 21:04:28|韩国 | 查看全部
好吧...那你说...

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 得知互动-专注Ai与站长技术交流社区-Ai交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表