我以前编写的软件使用堆栈来检查平衡方程,但现在我被要求递归地编写一个类似的算法来检查正确的嵌套括号和括号.
好例子:()[]()([]()[])
不好的例子:((]([)]
假设我的函数被调用:isBalanced.
每次传递都应该评估一个较小的子串(直到达到2的基本情况)?或者,我应该总是评估完整的字符串并向内移动索引吗?
我使用Google的PageSpeed在我的网站上运行测试,它建议我"利用浏览器缓存"并提供以下资源:
http://code.google.com/speed/page-speed/docs/caching.html#LeverageBrowserCaching
此资源从未解释如何实际更改我的http标头的到期日期.我是通过.htaccess做的吗?我想尽可能长时间地设置缓存(不违反Google最近一年的政策).
任何关于推荐设置的建议(对于自定义的PHP驱动的社交网络社区)都将非常感激.
我正在尝试将JSON(从php的json_encode)加载到Backbone JS集合中.我把问题简化为:
var myJSON = '[{ "id":"1","name":"some name","description":"hmmm"}]';
var myCollection = new MyCollection(myJSON, { view: this });
Run Code Online (Sandbox Code Playgroud)
和:
MyObject = Backbone.Model.extend({
id: null,
name: null,
description: null
});
MyCollection = Backbone.Collection.extend({
model: MyObject,
initialize: function (models,options) { }
});
Run Code Online (Sandbox Code Playgroud)
错误:
未捕获的TypeError:不能使用'in'运算符来搜索'id'
类似问题: Backbone:从服务器获取集合
我的JSON肯定看起来格式正确,我错过了一些明显的东西吗?我试图使用简单的id:"1"而不是"id"具有相同的结果.
我正在使用类似于facebook的PHP/MySQL设计一个News Feed系统.
我之前曾问过类似的问题,但现在我改变了设计,我正在寻找反馈.
示例新闻:
User_A对User_B的新专辑发表了评论.
Run Code Online (Sandbox Code Playgroud)"Hey man nice pictures!"User_B为[他/她] 个人资料添加了新照片.
Run Code Online (Sandbox Code Playgroud)[show photo thumbnail]
最初,我使用Obj1:Type1 |的过多列实现了这个 Obj2:Type2 | 等等..
现在使用几个特殊关键字和演员/接收者关系设置设计.我的数据库使用在包含userid,actionid,receiverid,receiverObjectTypeID的表上连接的消息表,
这是加入时的外观精简版:
News_ID | User_ID | Message | Timestamp
2643 A %a commented on %o's new %r. SomeTimestamp
2644 B %a added a new %r to [his/her] profile. SomeTimestamp
Run Code Online (Sandbox Code Playgroud)
%a =执行操作的人员的User_ID
%r =接收对象
%o =接收对象的所有者(例如专辑的所有者)(如果%r是用户,则为NULL)
问题:
这是一种智能(高效/可扩展)的前进方式吗?
如何存储"事件预览"?例如,如果我想显示User_A对User_B发表的评论(如上所述,以及Facebook的新闻Feed).我考虑过只使用相关数据的编码副本..例如JSON编码注释文本或照片html ..但这看起来很脆弱(用户可能会删除照片,而它仍在另一个用户的Feed中)
如何显示以下消息:"User_B在其个人资料中添加了4张新照片." 用照片的缩略图?
我正在尝试为以下内容创建Podspec:https://github.com/sincerely/shiplib-ios-framework
Pod Lint通过并且文件正被添加到项目中,但它不链接二进制"Sincerely"文件.通过以下方式导入时,由于缺少文件,示例项目构建失败:<Sincerely/filename.h>
Pod::Spec.new do |s|
s.name = 'ShipLib'
s.version = '1.4'
...
s.source = {
:git => 'https://github.com/sincerely/shiplib-ios-framework.git',
:tag => 's.version.to_s'
}
s.library = 'Sincerely'
s.source_files = 'Sincerely.framework','Sincerely.framework/Headers/*.h'
s.resources = 'Sincerely.framework/Resources/*.{png,nib}'
s.frameworks = 'AddressBook', 'AddressBookUI', 'SystemConfiguration', 'CoreTelephony'
s.xcconfig = { 'LIBRARY_SEARCH_PATHS' => '$(PODS_ROOT)/ShipLib/' }
end
Run Code Online (Sandbox Code Playgroud)
编辑:
Pod::Spec.new do |s|
s.name = 'ShipLib'
s.version = '1.4'
s.platform = :ios
s.summary = 'Allow users to send printed photos from your app.'
s.author = { 'Sincerely' => 'dev@sincerely.com' …Run Code Online (Sandbox Code Playgroud) 检查用户名是否包含我定义的一些特殊字符的有效方法是什么.
示例:%#^.!@&()+ /"?`〜<> {} [] | = - ;
我需要检测它们并返回一个布尔值,而不仅仅是将它们剥离出来.
可能是一个非常简单的问题,但我需要一个更好的方法,而不是一个大的条件列表或一个草率循环.
我有一个自定义图库,用缩略图填充div,每个缩写包含在一个fancybox组中.
当您单击一个(它在fancybox中打开)并且您可以按Prev/Next在第一个"页面"上的图像之间循环.要在页面之间移动,您必须关闭fancybox并更改页面,然后打开新的缩略图.这组新照片是通过ajax检索的.
为了向您展示我正在谈论的内容, http://www.speedcountry.com/mSpeed323/Mazda_MAZDASPEED3
如何使用fancybox切换页面并加载下一组图像?
我正在使用backbone和rails'paperclip'gem实现异步照片上传:
问题:
item.rb的
class Item < ActiveRecord::Base
has_many: photos
...
Run Code Online (Sandbox Code Playgroud)
Photo.rb
class Photo < ActiveRecord::Base
attr_accessible :photo
belongs_to :item
has_attached_file :photo
...
Run Code Online (Sandbox Code Playgroud)
ItemView.js.coffee
class MySite.Views.Items.Edit extends Backbone.View
template: JST['items/edit']
initialize: ->
@modelBinder = new Backbone.ModelBinder
@model.on('change', @render(), this)
events: ->
'submit #edit_item_form' : 'save_item'
render: ->
$(@el).html @template( item: @model )
@new_photo = @model.new_photo()
@modelBinder.bind @model, $("#item_fields")
@modelBinder.bind @new_photo, $("#photo_fields")
@
save_item: (e) ->
e.preventDefault()
@model.save()
@new_photo.save()
Run Code Online (Sandbox Code Playgroud)
Edit.jst.eco
<form id="edit_item_form" accept-charset="UTF-8" data-remote="true" enctype="multipart/form-data">
<div id="item_fields"> .... </div>
<div …Run Code Online (Sandbox Code Playgroud) ruby-on-rails paperclip ajax-upload coffeescript backbone.js
我正在构建一个程序,它使用mprotect()来限制一块内存访问.当请求内存时,抛出SIGSEGV,我使用signal()调用来监听.
一旦检测到SIGSEGV,我需要以某种方式访问指向所请求的内存(引发错误)的指针以及所请求的段的大小.这可能吗?
void fifoSigHandler(){
// Needs to only remove protection from requested block of virtual memory
mprotect(fifoVm,(size_t)fifoVm_size,PROT_WRITE);
printf("Caught Seg Fault");
}
void fifo_init(void* vm, int vm_size, int n_frames, int page_size)
{
fifoVm = vm;
fifoVm_size = vm_size;
fifoFrames = n_frames;
fifoPageSize = page_size;
mprotect(fifoVm,(size_t)fifoVm_size,PROT_NONE);
signal(SIGSEGV, fifoSigHandler);
}
Run Code Online (Sandbox Code Playgroud)
另外,有没有办法确定当前分配的内存块(PROT_NONE,PROT_READ等等)的mprotect()级别?
我需要编写一个PHP函数来删除字符串中的开始和结束段落标记,但前提是它们位于开头/结尾.所以字符串:
"Simple Test"
"<p>Here</p>"
"<p>Test <p>Nested</p> Outside </p>"
Run Code Online (Sandbox Code Playgroud)
输出:
"Simple Test"
"Here"
"Test <p>Nested</p> Outside"
Run Code Online (Sandbox Code Playgroud)
HTMLPurifier可以这样做,还是应该使用substr?我的第一次尝试是:
if(strpos($str,'<p>') === 0 && strcmp(substr($str,-1,4),'</p>'))
$str = substr($str,3,strlen($str)-4);
Run Code Online (Sandbox Code Playgroud) php ×4
backbone.js ×2
javascript ×2
.htaccess ×1
ajax ×1
ajax-upload ×1
algorithm ×1
caching ×1
cocoapods ×1
coffeescript ×1
collections ×1
fancybox ×1
handler ×1
htmlpurifier ×1
ios ×1
jquery ×1
json ×1
mprotect ×1
mysql ×1
news-feed ×1
pagespeed ×1
paperclip ×1
performance ×1
recursion ×1
regex ×1
signals ×1
stack ×1
strip-tags ×1
substr ×1