小编the*_*oot的帖子

在二叉树中搜索

我编写了以下函数来搜索存储整数值的二叉树中的值(该函数是更大程序的一部分):

bool tree::search(int num)       //the function belongs to class 'tree'
{
   node *temp=head;      //'head' is pointer to root node

   while(temp!=NULL)
   {
      if(temp->data==num)
         break;

      if(num>temp->data)
         temp=temp->right;

      if(num<temp->data)
         temp=temp->left;
   }

   if(temp==NULL)
      return false;
   else if(temp->data==num)
         return true;   
}    
Run Code Online (Sandbox Code Playgroud)

问题是:当我搜索树中存在的值时,它运行正常.但是如果我搜索树中不存在的值,程序就会挂起,我必须关闭它.还有一件事 - 我知道我们可以通过传递node*temp作为参数来递归地实现搜索功能,而不是在里面声明它,我已经这样做了,这导致程序正确运行,但我想知道问题是什么在上面的代码中.

我在这里给出了完整的程序,以防它更容易找到错误(请注意我只编写了两个函数):

#include<iostream>
using namespace std;

struct node
{
int data;
node *left;
node *right;
};

class tree
{
public:
    node *head;    //pointer to root
    int count;     //stores number of elements in tree
    tree();
    void addnode(int);
    void deletenode(int);
    bool search(int);
    int minimum(); …
Run Code Online (Sandbox Code Playgroud)

c++ search binary-search-tree

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

如何将Freenom域指向Heroku应用?

我想将我的域链接到我的Heroku Rails应用程序。

我应该遵循什么步骤?我应该以以下Freenom形式输入什么?

我应该在这里输入什么?

dns ruby-on-rails heroku

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

确定具有指定面向模式的相机的设备 ID

我正在编写代码以允许页面内select元素选择相机。默认相机应该是“环境”相机,而其余的应该在后面列出。

使用以下调用,我可以从适当的面向“环境”的摄像头流式传输视频:

navigator.mediaDevices.getUserMedia({ video: { facingMode: "environment"} }).then(function (stream) {
    // display stream on web page
    ...
});
Run Code Online (Sandbox Code Playgroud)

同样,我可以使用以下方法获取可用设备列表:

navigator.mediaDevices.enumerateDevices().then(
    devices => {
        // build list of options
    }
);
Run Code Online (Sandbox Code Playgroud)

我存储deviceId每个选项的 ,并使用它来显示来自那个运行良好的相机的提要。

但是,默认选择的选项不一定是“环境”相机。并且从返回的流对象getUserMedia似乎没有一种简单的方法来确定deviceId提供该流的设备。我似乎也找不到任何其他方法来确定面向“环境”的相机。

这是不可能的还是getDeviceIdForFacingMode我刚刚错过了某种功能?

javascript navigator mediadevices

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

如何在log(n)时间内在数组的任何范围内找到最大值?

例如阵列:{1,5,2,3,2,10}

范围:0-1答案:5范围:2-4答案:3范围:0-5答案:10等

c++ algorithm indexed binary-search-tree

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

PHP从while循环字符串中删除最后2个字符

我在循环语句中返回一个列表,并尝试从结果中删除最后两个字符:逗号和空格.

在我尝试使用trim,rtrim,implode和strlength之前,这是我的类函数

function ReturnPlayerList()
{
    global $sql;
    $pull = $sql->Query($GLOBALS['GET_PLAYERS']);
    while ($pullrow = mysqli_fetch_array($pull))
    {
        $name = $sql->Query($this->ReturnForumUser($pullrow['UID']));
        while ($nameRow = mysqli_fetch_array($name))
        {
            echo $nameRow['username']."(".$pullrow['char_name']."), ";
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如何删除最终分隔符?

php

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