plasmasphere.net -プラズマスフィア ドットネット-

Diary

« 1... 66 67 68 69 70 ...100 »

歳を取りました。

2006/10/16(Mon) 00:10

タイトルの通り。
誰にでもある、年一回の行事が本日ありました。
もうヤダ。取りたくない(´・ω・`)


喉が

2006/10/15(Sun) 00:10

何かここんとこ喉に違和感あるなー、と思って鏡で扁桃腺の辺りを見てみたら、前と同じとこが地味に荒れてました。
白いってわけじゃなくて、何か黒くなってたり、繊維が壊れてボコボコになってたり。
白いより痛々しいっす…。
とりあえず週明けに耳鼻咽喉科に行かないと(´・ω・`)


「SNSは安全」という罠

2006/10/13(Fri) 00:10

どこぞの会社の社員が、彼女とハメ撮りしてた画像ファイルをShare経由でウイルスにかかり、Shareで流出させたそうで。
流出させたファイルの中に本名が入ってて、それをmixiで検索したら大当たり。
該当のコミュニティやマイページは大荒れになりましたとさ。

という事がマジであったわけですが。
以前Winnyについて書いたことがありましたけど、要はそれと同じ事で…。
今回はShareというP2Pを媒介に、mixiというSNSを経由して広まったと。

これ、誰が悪いのか。

どうも某ゲンダイとかいう新聞では、mixiが悪いってことになっとるようで。
おおっぴらに新聞にまで載せて、煽っているのは誰かしら…。

本名をソーシャルネットワーキングシステムというクローズネットワーク内とは言え、晒すのは良くないと。
それは分かるんですが。
mixiはソリューションを提供しているだけで、ユーザ間で起こった問題とかは結局ユーザの問題なんですよね。
そこで起こった問題をmixi側に問いかけるのはバカだと。

因みにmixiの登録人数はこれを書いている時点で約710万人
これを閉鎖空間と見るかどうかは個人の判断ですが…。

P2Pに関しては、Winnyの項を参考してくれればと。

要は、流出させた奴が一番悪い。
そういう事になるんですが…世の中上手くできているもので、それ相応の物を得るためには相応のリスクも負う事になるんですね。
流出したファイルは、多分この先未来永劫無くなる事はないでしょうね。大げさでなく。
人類の歴史の終わりとか言われたら、そりゃ無くなるだろうけど(笑)

まぁ何が言いたいかっつと。
仕事ではないとはいえ、最低限のPCリテラシーを学ぶ事。
知らないのに手を出すなという事。
ゲンダイはクソ。


F1

2006/10/08(Sun) 00:10

皇帝が…_| ̄|○
鈴鹿だけは皇帝にぶっちぎってほしかった。


PHPでクイックソート

2006/10/06(Fri) 00:10

昨日のバブルソートに続き、クイックソート(Quick Sort)のソースも置いておきます。
PHPのソートソースって、探しても見つからないんですよね。なんでだろ。

qsort.php

<?php

$val = array(12,50,20,1574,67,54,2,35,21);

echo "ソート前";
echo "<pre>";
print_r($val);
echo "</pre>";

qsort($val, 0, count($val)-1);

echo "ソート後";
echo "<pre>";
print_r($val);
echo "</pre>\n<hr />\n";


$arr = array(
			"0" => array( "name" => "名前1", "No" => "3", "value" => "******"),
			"1" => array( "name" => "名前2", "No" => "1", "value" => "******"),
			"2" => array( "name" => "名前3", "No" => "2", "value" => "******"),
			"3" => array( "name" => "名前4", "No" => "5", "value" => "******"),
			"4" => array( "name" => "名前5", "No" => "4", "value" => "******"),
		);

echo "ソート前";
echo "<pre>";
print_r($arr);
echo "</pre>";

qsort($arr, 0, count($val)-1, $flag = "No");

echo "ソート後";
echo "<pre>";
print_r($arr);
echo "</pre>\n<hr />";

/*
 * クイックソート
 * $int_array = ソートする配列
 * $left = 開始位置(0で決め打ち)
 * $right = 終了位置($int_arrayの要素数:決め打ち)
 * $flag = ソート対象の配列要素
 * $order = ソートの昇順(ASC)・降順(DESC) デフォルトは昇順
*/
function swap(&$v, $i, $j) {
	$temp = $v[$i];
	$v[$i] = $v[$j];
	$v[$j] = $temp;
}

function qsort(&$int_array, $left = 0, $right, $flag = "", $order = "ASC") {
	if ($left >= $right) {
		return;
	}
	swap ($int_array, $left, intval(($left+$right)/2));
	$last = $left;
	for ($i = $left + 1; $i <= $right; $i++) {
		if($flag) {
			if($order=="DESC") {
				if ($int_array[$i]["".$flag.""] > $int_array[$left]["".$flag.""]) {
					swap($int_array, ++$last, $i);
				}
			} else {
				if ($int_array[$i]["".$flag.""] < $int_array[$left]["".$flag.""]) {
					swap($int_array, ++$last, $i);
				}
			}
		} else {
			if($order=="DESC") {
				if ($int_array[$i] > $int_array[$left]) {
					swap($int_array, ++$last, $i);
				}
			} else {
				if ($int_array[$i] < $int_array[$left]) {
					swap($int_array, ++$last, $i);
				}
			}
		}
	}
	swap($int_array, $left, $last);
	qsort($int_array, $left, $last-1, $flag = $flag, $order = $order);
	qsort($int_array, $last+1, $right, $flag = $flag, $order = $order);
}
?>

まぁ、落ちてたソースを多次元配列に対応させただけですけどね。
とりあえず関数であっても邪魔にはならないので、最近作るWebには大体入れてます。

参考:いろいろなソートアルゴリズム


PHPでバブルソート

2006/10/05(Thu) 00:10

PHPのソート関数が無いかと探していたら、特に無かったのでバブルソート(Bubble Sort)をJava版からPHPに改変してみました。
rsortとか使えば同じ動作するんで別にいらないんですが…。
ところがどっこい、二次元配列のイチ要素に対してソートを実行しようとすると、そうもいかなかったわけで。

例えば…

Array
(
    [0] => 12
    [1] => 50
    [2] => 20
    [3] => 1574
    [4] => 67
    [5] => 54
    [6] => 2
    [7] => 35
    [8] => 21
)

みたいな配列は普通にrsort使えば問題ないんですが…

Array
(
    [0] => Array
        (
            [name] => 名前1
            [No] => 3
            [value] => ******
        )

    [1] => Array
        (
            [name] => 名前2
            [No] => 1
            [value] => ******
        )

    [2] => Array
        (
            [name] => 名前3
            [No] => 2
            [value] => ******
        )

    [3] => Array
        (
            [name] => 名前4
            [No] => 5
            [value] => ******
        )

    [4] => Array
        (
            [name] => 名前5
            [No] => 4
            [value] => ******
        )

)

みたいな配列をNo要素順にソートしようとするとうまくいかない。
いや、俺が間違ってるだけかもしれんが。

というわけでソース。

bsort.php

<?php

$val = array(12,50,20,1574,67,54,2,35,21);

echo "ソート前";
echo "<pre>";
print_r($val);
echo "</pre>";

bsort($val);

echo "ソート後";
echo "<pre>";
print_r($val);
echo "</pre>\n<hr />\n";


$arr = array(
			"0" => array( "name" => "名前1", "No" => "3", "value" => "******"),
			"1" => array( "name" => "名前2", "No" => "1", "value" => "******"),
			"2" => array( "name" => "名前3", "No" => "2", "value" => "******"),
			"3" => array( "name" => "名前4", "No" => "5", "value" => "******"),
			"4" => array( "name" => "名前5", "No" => "4", "value" => "******"),
		);

echo "ソート前";
echo "<pre>";
print_r($arr);
echo "</pre>";

bsort($arr, $flag = "No");

echo "ソート後";
echo "<pre>";
print_r($arr);
echo "</pre>\n<hr />";

/*
 * バブルソート
 * $val = ソートする配列
 * $flag = ソート対象の配列要素
 * $order = ソートの昇順・降順 デフォルトは昇順
*/
function bsort(&$val, $flag = "", $order = "ASC") {
	for($i=0;$i<count($val)-1;$i++){
		for($j=count($val)-1;$j>i;$j--){
			if($flag) {
				if($order=="DESC") {
					if($val[$j]["".$flag.""]>$val[$j-1]["".$flag.""]){
						$t=$val[$j];
						$val[$j]=$val[$j-1];
						$val[$j-1]=$t;
					}
				} else {
					if($val[$j]["".$flag.""]<$val[$j-1]["".$flag.""]){
						$t=$val[$j];
						$val[$j]=$val[$j-1];
						$val[$j-1]=$t;
					}
				}
			} else {
				if($order=="DESC") {
					if($val[$j]>$val[$j-1]){
						$t=$val[$j];
						$val[$j]=$val[$j-1];
						$val[$j-1]=$t;
					}
				} else {
					if($val[$j]<$val[$j-1]){
						$t=$val[$j];
						$val[$j]=$val[$j-1];
						$val[$j-1]=$t;
					}
				}
			}
		}
	}
}
?>

単純なバブルソート。
要素が30を超えてくると、動作がぬるぬるしだす辺りはやっぱりバブルソートだなぁ…と。
クイックソートはまた明日にでも。

参考:いろいろなソートアルゴリズム


サッカー

2006/10/04(Wed) 00:10

VSガーナ親善試合。
交代枠全部使ったのは楽しかった。
というか、交代しきった後の方が見てて楽しかったのは、きっと播戸と中村憲剛のお陰かな。

ところで巻君の足元が絶望的に下手糞なのは、どうにもならんのでしょうか。
走り出した選手の足元に出すパスが多すぎ。貰う方つんのめってるし。

今回は故障で加地さんがいなかったので残念でした。
代わりの駒野のDFがダメすぎて見てられないです。

まぁ、何でもいいから四年後とかにこんな感じに…なってたらいいなぁ。
http://www.youtube.com/watch?v=Qv-xC1GKmH8
と上の動画見てて2005年のコンフェデを思い出した。
http://www.youtube.com/watch?v=zIKt8BGhh8Y
後にも先にも、凄かったのはこれと同じコンフェデのギリシア戦くらいだったけど。


CSSでタブを作成する為のモジュール2

2006/09/30(Sat) 00:09

タブ型リンクを作成するCSSのモジュールその2。

CSS

.tab2 {
	margin:0;
	padding:5px;
	border-bottom:1px solid #aaa;
}

.tab2 li {
	display:inline;
}

.tab2 li a {
	padding:4px 7px;
	border:1px solid #aaa;
	border-bottom:none;
	margin-right:1px;
	background:#eee;
}

.tab2 li.active_tab a {
	padding:4px 7px;
	border:1px solid #aaa;
	border-bottom:none;
	margin-right:1px;
	background:#fefefe;
}

.tab2 li a:hover {
	padding:4px 7px;
	border:1px solid #aaa;
	border-bottom:none;
	margin-right:1px;
	background:#fefefe;
}

HTML

<ul class="tab2">
<li><a href="/attention.html">Information</a></li>
<li><a href="/archives/">Archives.html</a></li>
<li><a href="/links">Links</a></li>
</ul>

前回のと同じく、まるまるコピー&ペーストで使ってください。
前回と違うのは見た目と、タブが2行になってもなんとかなる所。
多分。


« 1... 66 67 68 69 70 ...100 »


 
© 1999- plasmasphere.net All rights reserved.