我正在构建一个网站,每次刷新页面时都会随机显示一个yelp列表.yelp搜索api返回数组中的20个列表.现在,我正在使用PHP的函数rand(0,19)在每次刷新页面时生成一个随机列表($ businesses [rand(0,19)]).
有人可以让我使用更智能的方法进行随机化吗?我想在重复之前显示所有20个列表.处理此问题的首选方法是什么?
以下答案不起作用,因为每次刷新页面时都会重新创建数字.我猜我需要存储我已使用过的数字?
$numbers = range(0, 19);
shuffle($numbers);
Run Code Online (Sandbox Code Playgroud)
// Handle Yelp response data
$response = json_decode($data);
$RANDOM = rand(1,19);
$business = $response->businesses;
echo "<img border=0 src='".$business[$RANDOM]->image_url."'><br/>";
echo $business[$RANDOM]->name."<br/>";
echo "<img border=0 src='".$business[$RANDOM]->rating_img_url_large."'><br/>";
?>
Run Code Online (Sandbox Code Playgroud) 我试图确定我的程序的渐近复杂性,该程序接受输入并确定它是否是多项式。
“如果输入表达式的长度是 m 个字符,那么你的程序相对于 m 的大复杂度是多少?”
我的猜测是 O(m*log m) 其中第一个 m 是迭代 m 次的 for 循环,log m 是计算大于 1 位数的指数的 while 循环。
此外,我试图保存一个“最大”值,该值包含最大指数,以便计算多项式运行时复杂度。但是,我对正确存储指数感到困惑。谁能推荐一个更简单的方法?
示例输入:“n^23 + 4n^10 - 3”应该有 23 作为最大指数
#include <iostream>
#include <string>
using namespace std;
int main() {
string input;
int pcount = 1; //count for # of variables( min 3 to be poly)
int largest = 0; // used for complexity
int temp=0;
cout << "Enter equation below. " << endl;
getline(cin,input); //to input polynomial
cout << …
Run Code Online (Sandbox Code Playgroud) 我不确定在printf语句中增加变量是否将有价值的东西保存为变量。
int x = 0;
printf("x=%d\n", ++x);
printf("x=%d\n", x);
Run Code Online (Sandbox Code Playgroud)
输出是
x=1
x=0
Run Code Online (Sandbox Code Playgroud)
要么
x=1
x=1
Run Code Online (Sandbox Code Playgroud)
我从未学习过C的基础知识,想知道它如何与C ++匹配。
我确实了解pre / post的增量,但是我担心如果在函数范围内对其进行增量操作,则在第一个printf()中执行++ x不会保存。