我有这个程序
//h is our N
static int g=0;
int fun(int h){
if(h<=0){
g++;
return g;
}
return g+fun(h-1)+fun(h-4);
}
Run Code Online (Sandbox Code Playgroud)
是否可以使用动态编程加快速度?
我发现这个函数在O(2 ^ n)中运行
我应该通过动态编程减少运行时间,但不理解这个概念.
只是要求在正确的方向上轻推.
我知道我可以在"帮助"菜单中添加版本号
application.pruductversion
但我不知道如何在发布应用程序时添加日期
我想使用这种方法从现有网页中获取一些文字:
try
{
WebClient client = new WebClient();
result = client.DownloadString(url);
int start = result.IndexOf("startpointstr") ;
end = result.IndexOf("EndpointStr");
result = result.Substring(start, end - start);
string.Format(
MessageBox.Show(result);
}
catch (Exception ex)
{
// handle error
MessageBox.Show(ex.Message);
}
Run Code Online (Sandbox Code Playgroud)
在积极的一面,它适用于英语,但对于像希伯来语这样的语言,它返回无法识别的字符(不是希伯来语)有没有办法重新格式化返回的字符串?
我尝试使用此代码:
OleDbConnection c = new OleDbConnection(con);
string SQLS = "SELECT MSysObjects.Name FROM MSysObjects WHERE MSysObjects.Name Not Like 'MsyS*' AND MSysObjects.Type=1 ORDER BY MSysObjects.Name";
OleDbDataAdapter da = new OleDbDataAdapter(SQLS, c);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;
Run Code Online (Sandbox Code Playgroud)
但我得到了这个例外:
记录无法读取; 没有'MSysObjects'的读取权限.
现在,我需要将整个ms-access数据库传输到mysql programmaticaly,因此我需要数据库名称.我如何解决这个错误?