这听起来很奇怪,但我现在需要这个.实际上我有一个像这样的数组:
var arr = new Array(123, 432, 98, 227, 764);
var max = Math.max.apply(Math, arr); //calculate max = 764
var min = Math.min.apply(Math, arr); //calculate min = 123
Run Code Online (Sandbox Code Playgroud)
现在我必须根据最小值和最大值制作几个范围:
100 - 200 // as the min is 123 (range 100 ~ 200)
201 - 300
301 - 400
401 - 500
501 - 600
601 - 700
701 - 800 // as the min is 764 (range 700 ~ 800)
Run Code Online (Sandbox Code Playgroud)
制作范围只是一个循环问题.但计算最小和最大的范围我实现为:
function integerRound (digit) {
var i = 0, msb; …Run Code Online (Sandbox Code Playgroud) 我正在使用嵌套片段和片段加载良好.但是当我在此frameLayout中加载另一个片段并想要再次加载嵌套片段时,我的应用程序正在崩溃.
07-14 16:58:21.272: E/AndroidRuntime(1813): java.lang.IllegalStateException: Activity has been destroyed
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1342)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.BackStackRecord.commitInternal(BackStackRecord.java:595)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.BackStackRecord.commit(BackStackRecord.java:574)
07-14 16:58:21.272: E/AndroidRuntime(1813): at me.kaidul.uhunt.Fragment1.onCreateView(Fragment1.java:23)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1460)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:911)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1088)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1444)
07-14 16:58:21.272: E/AndroidRuntime(1813): at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:429)
Run Code Online (Sandbox Code Playgroud)
我的父级Fragment类:
public class Fragment1 extends SherlockFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment1, …Run Code Online (Sandbox Code Playgroud) 我在服务器上有一个证书链:
Certificate chain
0 s:/******/O=Foobar International BV/OU****
i:/C=US/O=Symantec Corporation/OU=Symantec Trust Network/****
1 s:/C=US/O=Symantec Corporation/OU=Symantec Trust Network/****
i:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=**** - G5
2 s:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=**** - G5
i:/C=US/O=VeriSign, Inc./OU=Class 3 Public Primary Certification Authority
Run Code Online (Sandbox Code Playgroud)
我的本地根CA证书是:
s:/C=US/O=Symantec Corporation/OU=Symantec Trust Network/****
i:/C=US/O=VeriSign, Inc./OU=VeriSign Trust Network/OU=**** - G5
Run Code Online (Sandbox Code Playgroud)
我正在使用此代码段来验证证书:
//gcc -lssl -lcrypto -o certverify certverify.c
#include <openssl/ssl.h>
#include <openssl/asn1.h>
#include <openssl/bio.h>
#include <openssl/x509.h>
#include <openssl/x509_vfy.h>
#include <openssl/pem.h>
#include <openssl/x509v3.h>
#include <openssl/err.h>
#include <openssl/conf.h>
#include <string.h>
int main() {
const char ca_bundlestr[] …Run Code Online (Sandbox Code Playgroud) void foo(int** ptr) {
int value = 4;
*ptr = &value;
// **ptr = value;
}
int main(void) {
int value = 7;
int* ptr = &value;
foo(&ptr);
cout << *ptr << endl; // 4
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是 - 由于value = 4在返回后不再有效/超出范围foo,为什么*ptr显示4而不是一些垃圾值?
我写过类似C++的STL bitset:
template<size_t N>
class bitset {
public:
...........
friend std::ostream& operator << (std::ostream &, bitset<N> const&);
private:
..........
};
// end of class
template<size_t N>
std::ostream& operator << (std::ostream &os, bitset<N> const& rhs) {
............
.........
return os;
}
Run Code Online (Sandbox Code Playgroud)
我试图像这样使用它:
bitset<5> foo; // success
std::cout << foo << std::endl; // fail
Run Code Online (Sandbox Code Playgroud)
错误信息是 -
undefined reference to `operator<<(std::ostream&, bitSet<5u> const&)
Run Code Online (Sandbox Code Playgroud)
实际上有什么问题?
我正在将 h264 编码的视频数据和 PCM g711 编码的音频数据混合到.mov媒体容器中。我试图在标题上写入元数据,但当我在 Windows 上转到文件->右键单击->属性->详细信息时,元数据没有显示,在 Ubuntu 中也是如此。这是我的代码 -
// Instead of creating new AVDictionary object, I also tried following way
// stated here: http://stackoverflow.com/questions/17024192/how-to-set-header-metadata-to-encoded-video
// but no luck
AVDictionary* pMetaData = m_pFormatCtx->metadata;
av_dict_set(&pMetaData, "title", "Cloud Recording", 0);
av_dict_set(&pMetaData, "artist", "Foobar", 0);
av_dict_set(&pMetaData, "copyright", "Foobar", 0);
av_dict_set(&pMetaData, "filename", m_sFilename.c_str(), 0);
time_t now = time(0);
struct tm tStruct = *localtime(&now);
char date[100];
strftime(date, sizeof(date), "%c", &tStruct); // i.e. Thu Aug 23 14:55:02 2001
av_dict_set(&pMetaData, "date", date, 0); …Run Code Online (Sandbox Code Playgroud) 我是通过一个面试问题来的。反转 32 位无符号整数的位。我写了这个完全没问题的代码:
uint32_t reverseBits(uint32_t n) {
for(int i = 0, j = 31; i < j; i++, j--) {
bool iSet = (bool)(n & (1 << i));
bool jSet = (bool)(n & (1 << j));
n &= ~(1 << j);
n &= ~(1 << i);
if(iSet) n |= (1 << j);
if(jSet) n |= (1 << i);
}
return n;
}
Run Code Online (Sandbox Code Playgroud)
在这之后,有一个后续问题——如果这个函数被多次调用,你会如何优化它?我无法弄清楚在那种情况下应该如何优化解决方案。
我有我的.htaccess文件localhost/site/夹,默认图像defaultcarimage-thumb.jpg在localhost/site/images/car_model/folder.I想将此默认图像,而不是主图像时的原始图像也不会被发现.为此我在谷歌上搜索并找到了这个链接
我编辑我的.htaccess如下:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} \.(gif|jpg|jpeg|png)$
RewriteRule .*/images/car_model/defaultcarimage-thumb.jpg [L]
Run Code Online (Sandbox Code Playgroud)
但没有任何改变.这段代码出了什么问题?或者还有其他方法吗?
我已经为实践目的实现了一个C++ STL列表(显然所有构造函数和方法都不存在).大多数功能都正常工作.
#ifndef list_H
#define list_H
#include <iostream>
#include <stdexcept>
template <typename T>
class list {
public:
list <T> & operator = (const list<T> &);
~list();
/* Modifiers */
void push_back(T&& data);
void push_back(T const& data);
void push_front(T&& data);
void push_front(T const& data);
void pop_back();
void pop_front();
void swap(list &x);
void clear();
/* Iterators */
typedef T* iterator;
typedef T* const const_iterator;
const_iterator begin() const; // cbegin
iterator begin();
const_iterator end() const; //cend()
iterator end();
const_iterator rbegin() const;
iterator rbegin(); …Run Code Online (Sandbox Code Playgroud) 我正在使用C++中的Hashtable.哈希函数:
// Default hash function class
template <typename K>
struct KeyHash {
unsigned long operator()(const K& key) const {
return reinterpret_cast<unsigned long>(key) % TABLE_SIZE;
}
};
Run Code Online (Sandbox Code Playgroud)
然后,当我声明哈希表为:
HashTable<int, std::string> hmap;
Run Code Online (Sandbox Code Playgroud)
它显示:
从'int'类型到'unsigned_long_int'的无效转换
这是什么问题reinterpret_cast<unsigned long>?
我们知道double可以从存储数量±4.94065645841246544e-324来±1.79769313486231570e+308.我们可以存储像IPv6这样的128位值double并按原样检索吗?例如,要存储IPv4,我们可以使用32位整数并将它们存储为8位分区.我们可以通过使用位屏蔽来检索它们.
在任何语言AFAIK中都没有标准容器来存储128位.我知道double可以安全地存储64位而没有任何精度错误,但有任何黑客攻击吗?
问题:哪个复杂性有我的功能?以及如何找到算法的时间复杂度?
该函数检查给定的int数组是否已排序.
我的代码:
public static boolean isSorted(double d[]){
boolean sortedAscending = true;
boolean sortedDescending = true;
boolean bool = false;
for (int i = 0; i < d.length-1; i++) {
if(d[i] > d[i+1] && sortedAscending){
sortedAscending = false;
if(bool){
break;
}
bool = true;
}
else if(d[i] < d[i+1]&& sortedDescending){
sortedDescending = false;
if(bool){
break;
}
bool = true;
}
}
return sortedAscending || sortedDescending;
}
Run Code Online (Sandbox Code Playgroud) 鉴于一组有限的N卡,什么是最好的方法(算法)洗牌,所以我将有最好的洗牌包卡,最小的步骤,以获得最大的随机排列?
最小步骤的最佳解决方案是什么?