小编Der*_*huk的帖子

数据结构过滤所有成对更大的点?

以下是一个很好的实施方案?

有问题的数据结构不得包含任何比另一个更大的点.例如(2,11)>(1,10),(5,5)不是-gt(1,5).输入在线发生,因此无法预先订购/准备.

示例输入

好的,这可以用上面的图像显示.因此,每个点按指示的顺序插入,如下所示:

  1. (2,2)插入
  2. (2,4)插入,而不是>(2,2),反之亦然,所以两者都保留
  3. (3,3)>(2,2)等未插入
  4. (1,1); 所有其他> so(1,1)插入,而所有其他人删除

想法?

algorithm data-structures

5
推荐指数
1
解决办法
90
查看次数

Zend Framework如何使用partialLoop列出表单元素

我是Zend Framework的新手,并不确定这是否可行.

我想使用partialloop创建一个包含表单字段的表.

我在视图中使用此代码:

<!-- code in views/scripts/request/edit.phtml -->

<table cellpadding='0' cellspacing='0'>
    <tr>
        <th>Cliente</th>
        <th>Descripcion</th>
    </tr>        
    <?php echo $this->partialLoop('partials/_solicitud-row.phtml', $this->form); ?>        
</table>
Run Code Online (Sandbox Code Playgroud)

在部分我试过这个:

<!-- code in views/scripts/partials/_solicitud-row.phtml -->
<tr>    
<td><?php  echo $this->key . "=" . $this->value; ?></td>

</tr>
Run Code Online (Sandbox Code Playgroud)

还有这个

 <!-- code in views/scripts/partials/_solicitud-row.phtml -->
<tr>     
<td><?php  echo $this->Descripcion; ?></td>
<td><?php  echo $this->cliente; ?></td>
<td><?php  echo $this->FechaHoraCreada; ?></td>
<td><?php  echo $this->Monto; ?></td>

</tr>
Run Code Online (Sandbox Code Playgroud)

使用这个我得到表的标题(<tr><th>Cliente</th><th>Descripcion</th></tr>)但仅此而已.我知道部分被处理,因为使用第一个部分等于"="被列出.

我正在做什么才有意义?有没有办法访问表单元素?我尝试了其他选项,如$ this-> getElement ..,但没有用

谢谢!

php zend-framework zend-form

4
推荐指数
1
解决办法
2504
查看次数

PHP:每次__set函数行为都不同

这样可以在对象上创建新属性.但是,有人可以用支持链接解释为什么setAttrib表现为两种不同的方式吗?为什么不引起......等待它......堆栈溢出!! ??

class Test
{
  public function setAttrib( $key, $value ) {
    echo "setAttrib\n";

    // first time: calls $this->__set($key, $value)
    // second time: just sets a public property (but, when exactly was it created?)
    $this->$key = $value;
  }

  public function __set( $key, $value ) {
    echo "__set\n";
    $this->setAttrib($key, $value);
  }
}

$test = new Test();
$test->setAttrib('hey', 'It works');
var_dump($test);
Run Code Online (Sandbox Code Playgroud)

生产...

setAttrib
__set
setAttrib
object(Test)#1 (1) {
  ["hey"]=>
  string(8) "It works"
}
Run Code Online (Sandbox Code Playgroud)

编辑:我不是在寻找替代方案. 我在寻找这个有效的原因.

php

4
推荐指数
1
解决办法
552
查看次数

PHP:获取参考ID

如何使用该var_dump函数获取PHP参考ID :

// PHP 5.2.6
class Test {}

$test1 = new Test; var_dump($test1);
$test1b = $test1;  var_dump($test1b);
$test2 = new Test; var_dump($test2);
Run Code Online (Sandbox Code Playgroud)

导致:

object(Test)#1 (0) {}
object(Test)#1 (0) {}
object(Test)#2 (0) {}
Run Code Online (Sandbox Code Playgroud)


看,var_dump可以告诉哪些引用是相同的,没有直接比较,并打印它们的引用ID #1#2.如何访问参考ID?

php

2
推荐指数
1
解决办法
3465
查看次数

Mysql:是否有一个更新语句将按如下方式进行非规范化?

对于以下(简化的)mysql数据库设置,我想将适用的guid复制到message表中.这可以用一个SQL完成update吗?

替代文字

CREATE TABLE IF NOT EXISTS `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `guid` varchar(13) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;

INSERT INTO `user` (`id`, `guid`) VALUES
(1, 'a'),
(2, 'b'),
(3, 'c');


CREATE TABLE IF NOT EXISTS `message` (
  `user` int(11) NOT NULL,
  `user_guid` varchar(13) NOT NULL,
  KEY `user` (`user`)
) ENGINE=InnoDB;
ALTER TABLE `message`
  ADD CONSTRAINT `message_ibfk_1` FOREIGN KEY (`user`) REFERENCES `user` (`id`) ON DELETE CASCADE;

INSERT INTO `message` (`user`, `user_guid`) VALUES
(3, …
Run Code Online (Sandbox Code Playgroud)

mysql sql

2
推荐指数
1
解决办法
166
查看次数

STL Set:以最有效的方式插入200万个有序数字

对于以下质量插入,因为输入是有序的,是否有任何(轻微)优化?

set<int> primes;
for ( int i = 2; i <= 2000000; i++ ) {
    primes.insert(i);
}
// then follows Sieve of Eratosthenes algorithm
Run Code Online (Sandbox Code Playgroud)

新改进,速度提高一倍:

set<int> primes;
for ( int i = 2; i <= 2000000; i++ ) {
    primes.insert(primes.end(), i);
}
// then follows Sieve of Eratosthenes algorithm
Run Code Online (Sandbox Code Playgroud)

c++ stl insert set

2
推荐指数
2
解决办法
2896
查看次数

PHP preg_replace:帮帮我grok(?= :)

另一个问题中,有以下几行:

$value='x-Cem-Date:Wed, 16 Dec 2009 15:42:28 GMT';
$value = preg_replace('/(^.+?)(?=:)/e', "strtolower('\\1')", $value);
// yields 'x-cem-date:Wed, 16 Dec 2009 15:42:28 GMT'
Run Code Online (Sandbox Code Playgroud)

(?=:)位表示搜索冒号,它必须.但是,我不明白那个特殊的语法,用?=.究竟是怎么回事?

php regex preg-replace

1
推荐指数
1
解决办法
463
查看次数